首页 > 解决方案 > 如何在 python 1000 次中打印一个字符串?

问题描述

我是 python 新手,我遇到了这个有趣的问题,它说:

实现一个生成器循环,如果我们分配

y = cycle()

然后反复调用

next(y)

返回值

food

pizza

hungry

food

pizza

hungry

在无尽的循环中。如果它无法管理无限循环,则执行 1000 个循环然后停止。

不允许使用循环我可以使用称为流(无限列表)的东西。

我怎样才能做到这一点?

标签: pythonpython-3.x

解决方案


诀窍是将三个yield语句包装成一个无限循环。这样,它们将无限循环

def cycle():
    while True:
        yield 'food'
        yield 'pizza'
        yield 'hungry'

要打印前 1000 次迭代,请使用

y = cycle()
for i in range(1000):
    print(next(y))

推荐阅读