簡體   English   中英

如何創建元組元素列表

[英]How do I create a list of tuple elements

可以說我有三個清單:

List1 = [1,2,3]
List2 = [4,5,6]
List3 = [7,8,9]

現在,我想用元組元素創建一個新列表,但要使用以前列表中的數據:

NewList = [(1,4,7), (2,5,6), (3,6,9)]

如何才能做到這一點?

您只需要zip

>>> List1 = [1,2,3]
>>> List2 = [4,5,6]
>>> List3 = [7,8,9]
>>> zip(*(List1, List2, List3))
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
>>>

此外,您會注意到第二個元組的第三個元素是不同的。 我認為您的提問有錯字。

如果性能對您很重要,則可以選擇另一種答案,我建議使用itertools.izip而不是內置的zip()

>>> l=[List1,List2,List3]
>>> from itertools import izip
>>> list(izip(*l))
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

作為替代方案,這不是最佳方法。

>>> NewList = []
>>> i = 0
>>> while i <= len(List1)-1 :
        NewList.append(tuple(j[i] for j in (List1, List2, List3)))
        i+=1
>>>NewList
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM