Python生成器的"send"函数的目的是什么?
- 论坛
- Python生成器的"send"函数的目的是什么?
12 浏览
Python生成器的"send"函数的目的是什么?
我理解yield
。但是生成器的send
函数是什么意思呢?文档中说:
generator.send(value)
恢复执行并向生成器函数“发送”一个值。
value
参数成为当前yield
表达式的结果。send()
方法返回生成器产生的下一个值,如果生成器在不产生另一个值的情况下退出,则引发StopIteration
异常。
这是什么意思?我以为value
是生成器函数的输入?短语“send()
方法返回生成器产生的下一个值”似乎也是yield
的确切目的,它也返回生成器产生的下一个值。
有没有一个使用send
的生成器的例子,可以完成yield
无法完成的任务?