将两个列表转换为1,不涉及元组

时间:2012-04-27 05:32:39

标签: python list tuples enumerate

我有两个列表,我试图以一种奇怪的方式使用zip来使它们成为一个列表。我有一个名单,比如说

names = ['nathan', 'julian', 'ramy', 'jack']

以及上一个上下文中出现的列表。让我们说这个列表就像['2', '3', '4', '5']。这是每个名字出现在列表中的次数......现在我如何使用zip函数获得['nathan 2', 'julian 3', 'ramy 4', 'jack 5']之类的内容?不必使用zip功能,但我认为这是使用我所知道的功能的唯一方法。

2 个答案:

答案 0 :(得分:5)

[" ".join(pair) for pair in zip(names, occurences)]

答案 1 :(得分:2)

怎么样:

map(" ".join, zip(names, occurrences))

@David Robinson的回答可能稍微多于Pythonic(IIRC Guido强烈希望列表推导过滤/映射),但这个更短。尽管如此,还是要归功于" ".join的想法。