[英]Create tuples from a list in Python
我有這個數組:
lst = ['A', 'B', 'C']
如何將字符串“ D”附加到每個元素並將每個集合轉換為元組:
lst2= [('A', 'D'),
('B', 'D'),
('C', 'D')]
這樣,使用列表推導 :
lst = ['A', 'B', 'C']
lst2 = [(x, 'D') for x in lst]
lst2
=> [('A', 'D'), ('B', 'D'), ('C', 'D')]
順便說一句,調用一個與內置函數沖突的變量list
是一個壞主意。 我重命名了。
替代解決方案是使用zip_longest
from itertools import zip_longest
list(zip_longest(['A', 'B', 'C'], [], fillvalue='D'))
結果將是:
[('A', 'D'), ('B', 'D'), ('C', 'D')]
list2 = [(i, 'D') for i in list]
(除了list
是一個非常不好的變量名的事實)
使用zip的另一種選擇:
x = ['A', 'B', 'C']
res = list(zip(x,'D'*len(x)))
list1 = ['A', 'B', 'C']
list2 = []
for i in list1:
list2.append((i, 'D'))
print(list2)
您可以使用函數product()
:
from itertools import product
lst = ['A', 'B', 'C']
list(product(lst, 'D'))
# [('A', 'D'), ('B', 'D'), ('C', 'D')]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.