一个列表理解中的连续迭代

时间:2018-05-24 14:19:59

标签: python list-comprehension

我想使用列表推导从2个不同列表的元素创建一个列表。

例如,假设我的2个列表是menwomen,我想要一个包含所有名称的列表:

men_names = [man.name for man in men]
women_names = [woman.name for woman in women]
all_names = men_names + women_names

是否有单行解决方案来获取此列表?谢谢!

编辑:使用列表推导是一项要求,因为在我的特定情况下,它应该比在for循环中构建列表快得多,并且性能是一个问题。

1 个答案:

答案 0 :(得分:1)

使用itertools.chain是一种在不创建中间列表的情况下实现此目的的方法。

from itertools import chain

all_names = [person.name for person in chain(men, women)]