Why isn't a function declared as async of type types.CoroutineType?

前端 未结 2 1782
你的背包
你的背包 2021-01-21 02:34

Quote from here:

types.CoroutineType

The type of coroutine objects, created by async def functions.

Quote f

2条回答
  •  旧时难觅i
    2021-01-21 03:15

    There's a difference between coroutine and coroutine function. The same way as there is a difference between generator and generator function:

    Calling the function g returns a coroutine, e.g.:

    >>> isinstance(g(), types.CoroutineType)
    True
    

    If you need to tell if g is a coroutine function (i.e. would return a coroutine) you can check with:

    >>> from asyncio import iscoroutinefunction
    >>> iscoroutinefunction(g)
    True
    

提交回复
热议问题