How to elegantly loop over multiple lists
本问题已经有最佳答案,请猛点这里访问。
比如,我有两个清单:
1 2 | a = [10, 20] b = [40, 50] |
我想一次遍历所有这些值(
简单地做两个循环并不是我想要的(重复是丑陋的)。
我也不想修改其中一个列表:
1 2 3 | a.extend(b) for i in a: print(i) |
那么,我如何在Python中巧妙地做到这一点呢?
您可以使用来自ITertools的链:
1 2 3 4 5 6 7 | from itertools import chain a = [10, 20] b = [40, 50] for i in chain(a, b): print(i) |
这不会创建一个新的列表(如
这也适用于发电机和其他iTerables。
1 2 | for i in a + b: print(i) |
注:我是自己回答的。对这个问题感到疑惑,找到了答案,但不是通过这样,觉得应该加上去。