假设a和b是列表。
a = [[1], [2]]
b = [[5, 6, 7], [3, 4, 5]]
我想得到一个列表
[[1,5,6,7], [2,3,4,5]]
有什么办法可以有效地做到这一点?列表或numpy数组都可以。
答案 0 :(得分:3)
zip
是你的朋友:
>>> a = [[1], [2]]
>>> b = [[5, 6, 7], [3, 4, 5]]
>>> [x+y for x, y in zip(a, b)]
[[1, 5, 6, 7], [2, 3, 4, 5]]
您还可以使用map
; operator
模块为此类用途提供了lambda x,y: x + y
的现成定义。
>>> import operator
>>> list(map(operator.add, a, b))