python中yield from怎么用?

Python (179) 2023-04-20 20:14:33

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

yield from本质:

for item in iterable: yield item的缩写版

代码示例:

defg(x):
yieldfromrange(x,0,-1)
yieldfromrange(x)
print(list(g(5)))

利用yield from语句向生成器(协程)传送数据

defwriter():
whileTrue:
w=(yield)
print('>>',w)
defwriter_wrapper(coro1):
coro1.send(None)
whileTrue:
try:
x=(yield)
coro1.send(x)
exceptStopIteration:
pass
defwriter_wrapper(coro2):
yieldfromcoro2
THE END

发表回复