首页 > 后端开发 > Python教程 > 如何使用 Zip 和列表理解在 Python 中交错列表?

如何使用 Zip 和列表理解在 Python 中交错列表?

DDD
发布: 2024-11-15 21:06:03
原创
208 人浏览过

How can I Interleave Lists in Python using Zip and List Comprehension?

利用 Zip 和列表理解来交错列表

在 Python 中交错相等长度的列表是一项常见任务。给定两个列表 [1,2,3] 和 [10,20,30],目标是将它们转换为 [1,10,2,20,3,30]。

解决方案使用 Zip 和列表理解:

交错列表的一种简洁方法是利用 zip 函数和列表理解。以下代码完成该任务:

[val for pair in zip(l1, l2) for val in pair]
登录后复制

在此代码中:

  • zip(l1, l2) 迭代两个输入列表中的元素对。
  • 外部列表理解 ([val forpair in zip(l1, l2)]) 为每个列表创建一个新列表
  • 内部列表理解([val for val inpair])为每对值创建一个新列表。

交错多个列表的扩展:

如果有多个列表要交错(N 个列表),可以使用 * 运算符扩展相同的概念zip:

lists = [l1, l2, ...]
[val for tup in zip(*lists) for val in tup]
登录后复制

在此代码中:

  • zip(*lists) 迭代所有输入列表中相应元素的元组。
  • 外部列表理解([val for tup in zip(*lists)]) 为每个元组。
  • 内部列表理解([val for val in tup])为每个值元组创建一个新列表。

以上是如何使用 Zip 和列表理解在 Python 中交错列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板