如果参数函数是生成器,则如何在函数中初始化生成器

时间:2019-10-30 22:16:43

标签: python python-3.x

如果有发电机

 hide(iterable):
    for v in iterable:
        yield v

hide(“ asdfg”)将产生字符串中的每个字符。 如果我设置

i1=hide("asdfg")        
i2=hide("asdfg")

这是两个不同的生成器i1和i2 所以我打印(next(i1))会给我一个“ a”,而print(next(i))会给我一个“ a”

但是现在我还有另一个功能,

def test(iterable):
    i1=iterable
    i2=iterable
    print(next(i1))
    print(next(i2))

test(hide(“ asdfgh”))会给我“ a”和“ s” 因为它们绑定到同一对象。 但我希望他们与众不同。 如果我们不使用额外的模块。 那么如何在另一个函数中初始化生成器呢?

0 个答案:

没有答案