[英]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.