的Python:合并列表
问题描述:
也许我也得太多,但我不能想办法到列表的方式结合起来,我需要的Python:合并列表
[1,2,3,4,5]
['A','E','I','I','U']
导致
[[1,'A'],[2,'E'],[3,'I'],[4,'O'],[5,'U']]
如果我结合他们,我得到的元组/圆括弧
答
这是zip
是
list_a = [1,2,3,4,5]
list_b = ['A','E','I','I','U']
list_res = zip(list_a, list_b) # Python 2.7
list_res = list(zip(list_a, list_b)) # Python 3 onward
如果你确实想在内部容器是元组,那么你可以使用map
提议@khelwood或列表的理解,或外在的循环,或...
list_of_lists = map(list, list_res) # Python 2.7
list_of_lists = list(map(list, list_res)) # Python 3 onward
注意的类似行为两个Python版本上的map
和zip
。在python 2上,他们返回列表,而在Python 3上他们返回迭代器。
答
如果你真的需要一个列表的列表,你就必须做到以下几点:
>>> a = [1, 2, 3, 4, 5]
>>> b = ['a', 'b', 'c', 'd', 'e']
>>> result = [list(zipped) for zipped in zip(a, b)]
>>> result
[[1, 'a'], [2, 'b'], [3, 'c'], [4, 'd'], [5, 'e']]
但你得到的元组,这是OP不需要的。 –