1
est 2019-08-22 11:35:02 +08:00
yield 返回一个
yield from 返回一堆 |
2
ipwx 2019-08-22 11:35:49 +08:00 via Android
这有啥好理解的… yield from = for xxx in yyy: yield xxx
|
3
null4a79 2019-08-22 17:05:24 +08:00
你可以把 yield from 想象成一个管道,把后面那个可迭代对象里的东西逐个引到这里来。
|
4
linw1995 2019-08-22 17:39:30 +08:00
我是这么理解的,可以参考一下
yield from sub_generator() 子生成器的 __next__ 委托给父生成器使用,当父生成器调用 __next__ 实际是调用子生成器的 __next__,直到子生成器抛出 GenertorExit。 |
5
Marinej 2019-08-23 13:12:24 +08:00
yield 就当成是个子程序中断关键字
yield from 当成是个是委托生成器的管道,还是蛮神奇的 |
6
NickFang 2019-08-27 21:53:57 +08:00
看《流畅的 python 》。
|