在此处的文档中:https://docs.python.org/3/library/asyncio-task.html ,我发现很多yield from
可以用await
代替.
我想知道它们在 Python 3.5 中是否一直等效。有没有人对此有想法?
最佳答案
不,它们不是等价的。 await
在 async
功能和 yield from
在生成器中非常相似并共享它们的大部分实现,但取决于您的 Python 版本,尝试使用 yield
或 yield from
在 async
内函数要么会导致彻底的 SyntaxError
或使您的函数成为 asynchronous generator function .
当 asyncio 文档说“await
或 yield from
”时,他们的意思是 async
函数应该使用 await
和基于生成器的协程应该使用 yield from
.
关于python-3.x - 在 Python 3.5 中,关键字 "await"是否等同于 "yield from"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43989511/