我有一些发电机:
def my_gen():
while True:
#some code
yield data_chunk
我有一些函数,可以对数据格式进行一些操作
def my_formatting_func(data_chunk):
#some code
return formated_data_chunk
在不修改 my_gen
的情况下,创建由 my_formatting_func
格式化的 data_chunks
的生成器的最短方法是什么?
最佳答案
假设 Python 3.x 并且生成器不接受任何参数(后者很容易添加):
def wrapper(generator):
def _generator():
return map(my_formatting_func, generator())
return _generator
@wrapper
def my_gen():
# do stuff
对于 2.x,使用 itertools.imap
而不是 map
。
关于python - 如何实现装饰生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43945564/