【发布时间】:2021-09-16 14:25:29
【问题描述】:
我正在尝试以下方法:
class Payload_Session_Generator:
def __init__(self):
pass
async def __anext__(self):
async for payload in generate_fb_payload():
if type(payload) != str:
yield payload
else:
StopAsyncIteration
def __aiter__(self):
return self
然后将其作为实例传递给不同的函数,并显式调用 aiter 方法,并且 _iter 是上述类的对象:
chunk = await self._iter.__anext__()
这会产生以下错误:
TypeError: object async_generator can't be used in 'await' expression
【问题讨论】:
-
__anext__必须是return一个元素。__aiter__可能是yield多个 元素。
标签: python python-3.x generator python-asyncio