我有一个 list
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
最佳答案
用
duplicate = (j for i in a for j in (i, i+'_ind'))
关于python - 使用生成器表达式返回多个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46386835/