| 123456789101112131415161718192021 |
- # -*- coding: UTF-8 -*-
- """
- 在 Python 中,使用了 yield 的函数被称为生成器(generator)。
- 跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。
- 在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,
- 返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行。
- 调用一个生成器函数,返回的是一个迭代器对象
- """
- def demo():
- for i in range(4):
- yield i
- g = demo()
- g1 = (i for i in g)
- g2 = (i for i in g1)
- print(list(g1))
- print(list(g2))
|