我想同时循环两个以上的列表。我用Google搜索,发现可以使用zip, map
。但他们只接受两个名单。我想循环5个列表。
任何帮助都会非常感激。
答案 0 :(得分:2)
Joachim Isaksson所说的是正确的。
如果你能提供一个代码片段会很有用,但你可以使用这样的东西:
get_value()
答案 1 :(得分:1)
zip
可用于任意多个列表。我刚刚这样做了,它运作正常。
l1 = [1, 2, 3, 4]
l2 = [10, 20, 30, 40]
l3 = [100, 200, 300, 400]
l4 = [1000, 2000, 3000, 4000]
for x1, x2, x3, x4 in zip(l1, l2, l3, l4):
print(x1, x2, x3, x4)
输出:
1 10 100 1000
2 20 200 2000
3 30 300 3000
4 40 400 4000
答案 2 :(得分:0)
检查signature for zip。它接受任意数量的迭代:
拉链(* iterables)
zip
多个列表没有问题:
a, b, c = [1,2,3],[4,5,6],[7,8,9]
for (i,j,k) in zip(a,b,c):
print(i,j,k)
打印:
1 4 7
2 5 8
3 6 9
您甚至可以压缩0
或1
个迭代!
list(zip()) # []
list(zip([1,2,3])) # [(1,), (2,), (3,)]