假设我有一个发电机组。与我提供的例子相比,是否有更多的pythonic或更简单的修改gen值的方法?
def genwrap(gen):
for value in gen:
yield(somefunc(value))
gen = somegenerator
for x in genwrap(gen):
print x
答案 0 :(得分:4)
如果它实际上正在应用已存在的函数,请使用map
。否则,这很好,如果它足够简单(例如(x + 1 for x in somegenerator)
),可以缩短为生成器表达式。
答案 1 :(得分:1)
def genwrap(gen):
return (somefunc(val) for val in gen)
答案 2 :(得分:0)
yield
声明中不需要括号:
def genwrap(gen):
for value in gen:
yield somefunc(value)