Python的yield from关键字
yield from + 生成器
在 Python 中,如果想在一个生成器中把另一个生成器的值传递出去,一种方法是用 for 循环逐个消费生成器的值并 yield:
1 | |
如果不想这么写,还有一种更简单、优雅的写法,即利用 yield from:
1 | |
yield from + 可迭代对象
yield from 不仅可以用在生成器上,也可以用在普通的可迭代对象上:
1 | |
yield from 的返回值
yield from 和生成器一起使用时,yield from 的返回值就是生成器的返回值:
1 | |
上面两段代码中,只有含有 yield 的函数才是生成器。普通函数的返回值会被 yield from 直接消费;只有生成器的返回值,才会变成 yield from 的返回值。
Python的yield from关键字
https://tomzhu.site/2026/07/12/Python的yield-from关键字/