2024-03-29 06:45:49 发布
网友
我有一个类User,它需要在异步IO脚本中迭代
User
使用__aiter__将User.objcets.iterator()转换为异步迭代器的正确方法是什么
__aiter__
User.objcets.iterator()
您可以使用async generator创建这样的迭代器(它具有aiter函数):
async def sync_to_async(iterator): for i in iterator: yield i
也可以从控制台输出
>>> it = Chat.objects.iterator() >>> ait = sync_to_async(it) >>> dir(ait) ['__aiter__', '__anext__', '__class__', '__del__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'aclose', 'ag_await', 'ag_code', 'ag_frame', 'ag_running', 'asend', 'athrow']
您可以使用async generator创建这样的迭代器(它具有aiter函数):
也可以从控制台输出
相关问题 更多 >
编程相关推荐