我有2个列表,我想将它们合并到一个元组列表中,以便维护顺序并且result[i]
是(first[i], second[i])
。假设这两个列表将始终具有相同的大小。有没有办法使用列表理解来做到这一点?因此,例如:python:将2个有序列表合并到元组列表中
>>> first = [1,2,3]
>>> second = [4,5,6]
>>> combine(first, second)
[(1,4), (2,5), (3,6)]
我试过几件事情
[(i,j) for i in first, j in second]
[(i for i in first, j for j in second)]
[(i,j) for i,j in first, second]
这些工作都不是。我只是想知道这是否可能,或者如果我必须使用循环来做。
为什么'list'包裹呢?我在简单使用'zip'的时候是否缺少一些边缘案例? – Spacedman
@Spacedman在Python 3中,zip()返回一个迭代器而不是一个列表。我补充说,它适用于两个版本。 – ayhan
'zip'肯定有目的,但仅仅是为了这个问题,是否有可能用列表理解呢? – ewok