python - 带有平面列表的元组的压缩列表

标签 python python-3.x

我想知道是否有一种简单的方法可以在 Python 3.x 中执行以下操作。假设我有两个结构如下的列表:

list_a = [(1,2), (1,2), (1,2), ...]
list_b = [3, 3, 3, ...]

生成生成器(此处通过调用函数 funky_zip 表示)的最简单方法是什么,它可以让我像这样遍历这两个列表:

>>> for a, b, c, in funky_zip(list_a, list_b):
>>>      print(a, b, c)
...
1 2 3
1 2 3
1 2 3
# and so on

我可以做

for aa, b in zip(list_a, list_b):
    print(aa[0], aa[1], b)

但我想知道是否有一种无需解包元组即可执行此操作的好方法。谢谢!

最佳答案

你只需要括号:

list_a = [(1,2), (1,2), (1,2)]
list_b = [3, 3, 3]
for (a, b), c in zip(list_a, list_b):
    print(a, b, c)

结果:

1 2 3
1 2 3
1 2 3

关于python - 带有平面列表的元组的压缩列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36961738/

相关文章:

python - 将多列 Pandas 数据框与一列进行比较

python - 在字典中使用字符串作为键总是更快吗?

python - 涉及 Python 内置数字类型和 Numpy 类型 float64 和 complex128 的二元算术运算结果的混淆类型

python - 类型错误:module() 最多接受 2 个参数(给定 3 个)从复数类(class)中获取的代码

python - 搜索列表中的值是否在字典中,其格式为 key-string, value-list(strings)

python - 在 python 中使用 2 个参数下标

python-3.x - Pandas DataFrame 导出到_csv 更改列的 dtype

python - 导入具有相互依赖的类变量的类时如何解决 NameError

python - 基于多行修改python中的pandas数据框

python - 在 Pandas 中迭代生成列名