Python:zip()返回列表内元组中的两个列表,而不是每个元素的元组列表

时间:2019-04-23 10:05:32

标签: python list

list_1和list_2是通过调用函数外部的函数返回的列表:

list_1 = [foo(x)]
list_2 = [foo(y)]

list_1 = [1,2,3,4]
list_2 = [5,6,7,8]
zipped_list = list(zip(list_1, list_2))
zipped_list = [([1,2,3,4], [5,6,7,8])]

应该是

zipped_list = [(1, 5), (2, 6), (3, 7), (4, 8)]

有什么主意吗?

1 个答案:

答案 0 :(得分:1)

删除初始方​​括号,只需执行以下操作:

list_1 = foo(x)
list_2 = foo(y)

您的代码正在创建以下内容:

list_1 = [[1,2,3,4]]
list_2 = [[5,6,7,8]]

是具有一个元素的列表(恰好是列表),因此压缩结果中也只有一个元素。