【发布时间】:2017-09-24 05:19:10
【问题描述】:
我有一个清单
a = ["a", "b", "c"]
我想创建一个带有后缀(“_ind”)的重复值的新列表。
["a", "a_ind", "b", "b_ind", "c", "c_ind"]
我知道可以用下面的函数来实现(List with duplicated values and suffix)
def duplicate(lst):
for i in lst:
yield i
yield i + "_ind"
如何使用生成器表达式实现相同的功能?我尝试了以下代码,但它不起作用。
duplicate = (i i+'_ind' for i in a)
File "<stdin>", line 1
duplicate = (i i+'_ind' for i in a)
^
SyntaxError: invalid syntax
【问题讨论】:
-
就像您链接到的那个问题中的第二个答案一样,只是将列表理解转换为生成器。
标签: python python-2.7 python-3.x