簡體   English   中英

如何對以下兩個列表執行列表理解?

[英]How to perform list comprehension on the following two lists?

這個問題之前可能已經有人問過,但是我是python的新手,而且缺乏更好的關鍵詞搜索讓我提出了這個問題。

我有兩個清單:

list1 = ['John', 'Don', 'Sam']
list2 = ['Melissa', 'Amber', 'Liz']
couples = [x + ' and ' y for x in list1 y in list2] # I can't do that

我的夫妻名單應如下所示:

['John and Melissa', 'Don and Amber', 'Sam and Liz']

如何以這種方式連接這兩個列表?

提前致謝

>>> list1 = ['John', 'Don', 'Sam']
>>> list2 = ['Melissa', 'Amber', 'Liz']
>>> [' and '.join(i) for i in zip(list1, list2)]
['John and Melissa', 'Don and Amber', 'Sam and Liz']

您可以使用zip()遍歷兩個列表:

couples = [x + ' and ' + y for x, y in zip(list1, list2)] 

zip兩個列表並使用str.format

list1 = ['John', 'Don', 'Sam']
list2 = ['Melissa', 'Amber', 'Liz']
print ["{} and {}".format(*name) for name in zip(list1,list2)]
['John and Melissa', 'Don and Amber', 'Sam and Liz']

您還可以使用枚舉:

list1 = ['John', 'Don', 'Sam']
list2 = ['Melissa', 'Amber', 'Liz']
print ["{} and {}".format(name,list2[ind]) for ind, name in enumerate(list1)]
['John and Melissa', 'Don and Amber', 'Sam and Liz']

暫無
暫無

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

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