【发布时间】:2012-07-15 05:27:19
【问题描述】:
我想知道如何编写 python 函数,它可以展平生成器,生成另一个生成器或可迭代对象(也可以生成另一个生成器/可迭代对象......可能无限)。
示例如下:
gen(gen(1,2,3), gen(4,5,6), [7,8,9], [gen(10,11,12), gen(13,14,15)])
注意:gen - 表示生成器对象,gen 之后括号之间的内容是生成器 gen 产生的数据。
“扁平化”后的预期结果:
gen(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)
flatten 函数也需要返回生成器! (否则,生成器的前面使用将毫无意义)。
请注意,我使用的是 python 3。
谢谢!
【问题讨论】:
标签: python python-3.x generator