使用Python中不同列表中的元素填充列表

时间:2015-06-21 20:53:59

标签: python list

我希望通过阅读其他列表中的信息来生成列表。该列表的格式为maindot =[dot1[0], dot2[0], ...],其中包含dot1等列表中的信息,例如

dot1=[2,4,34], dot2=[3,45,4], 

将位于单独的参数文件中。点列表的数量将由用户指定为n。

如何编写它以便python'知道'参数文件中给出的点列表数?

1 个答案:

答案 0 :(得分:0)

您可以使用zip函数从任意数量的iterables中获取列:

>>> dot1=[2,4,34]
>>> dot2=[3,45,4]
>>> zip(dot1,dot2)
[(2, 3), (4, 45), (34, 4)]

你想把你的第一个索引列在另一个列表中,你可以得到zip(dot1,dot2)的第一个索引:

new_list=zip(dot1,dot2)[0]

请注意,在python 3 zip中返回一个生成器,以便您可以使用next函数来访问第一个索引:

new_list=next(zip(dot1,dot2))

如果你有很多列表,你可以把它们全部放在一个列表中并通过解压缩操作将它们全部传递给zip函数:

new_list=zip(*main_list)[0]