如有重复,我深表歉意,但我进行了搜索,但找不到解决我当前问题的任何主题。
我想知道是否有某种pythonic方式可以并行访问两个(或多个)子列表。我已经很了解zip
函数,因此我将在一个简短的示例中使用它来解释我想做什么。假设我有以下两个列表:
list1 = [1,2,3]
list2 = [4,5,6]
我知道我可以像这样同时遍历它们:
>>> newlist = [i+j for i,j in zip(list1, list2)]
>>> newlist
[5,7,9]
但是,通过我的数据处理方式,我想做些不同的事情。而不是两个独立的列表,我的数据存储看起来像这样:
biglist = [[1,2,3], [4,5,6]]
我知道我可以提取每个子列表作为它自己的变量,但是我还希望可以做更多这样的事情:
newbiglist = [i+j for i,j in zip(biglist)]
python能够识别
biglist
中有两个子列表的地方。有谁知道可以执行类似操作的功能吗? 最佳答案
两个或两个以上您可以尝试
[sum(i) for i in zip(*biglist)]
在这里
i
将是可迭代的,因此您可以使用任何接受可迭代的函数,也可以编写自己的函数。关于python - 如何并行遍历两个子列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47535672/