python - 将多个 zip 对象连接到一个列表中

标签 python

我正在使用列表理解来生成许多 zip 对象:

[ zip(a, b[i]) for i in range(0, 1) ]

>>> [<zip object at 0x10a216b88>, <zip object at 0x10a216c08>]

如何将两个 zip 对象连接到一个列表中?

例如<zip object at 0x10a216b88>有:

(a, b)
(a, c)

<zip object at 0x10a216c08> :

(f, g)
(f, w)

期望的输出是:

[(a, b), (a, c), (f, g), (f, w)]

最佳答案

使用itertools.chain.from_iterable :

>>> import itertools
>>> l = [zip(range(3), range(3)), zip(range(3), range(3))]
>>> l
[<zip object at 0x7f7e80912408>, <zip object at 0x7f7e840a18c8>]
>>> list(itertools.chain.from_iterable(l))
[(0, 0), (1, 1), (2, 2), (0, 0), (1, 1), (2, 2)]

关于python - 将多个 zip 对象连接到一个列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55654710/

相关文章:

python - 如果用户拒绝配置对话框,则关闭 pyqt5 应用程序

python - 我需要帮助制作 Tic Tac Toe 游戏。 Python

python - 如何使用 python 更新、旋转和显示 ply 文件?

python - 为复杂方程 manim 的部分着色

python - 使用带有 Python 的 Selenium Webdriver 在 Headless chrome 浏览器上运行脚本时发生超时错误

python - 对列表的成员进行操作

python - 运行带有参数的 python 脚本

python - 从协程接收器写入 csv 文件...如何避免关闭文件错误?

python - 适用于 Windows SDK 的 iTunes COM 中的媒体种类

python - turtle.onclick() 不能正常工作