我有一个看起来像这样的代码:
import asyncio
from typing import List
def some_callback(result):
print(result)
async def b() -> List[int]:
return [1, 2, 3]
async def a() -> None:
search = asyncio.ensure_future(b())
search.add_done_callback( some_callback)
await search
loop = asyncio.get_event_loop()
loop.run_until_complete(a())
loop.close()
我正在尝试向some_callback
函数添加类型注释,但我无法完全理解对result
变量进行注释的锄头。应该是Coroutine
吗?或者也许Awaitable
?
当我使用reveal_type
of 时mypy
,关于result
变量的输出是Any
.
这个程序的输出是:
<Task finished coro=<b() done, defined at ____.py:7> result=[1, 2, 3]>
我应该如何正确记录此功能?