相关函数
- inspect.ismodule(object)
如果对象是模块则返回True - inspect.isclass(object)
如果对象是一个类,无论是内置的还是在Pythoncode中创建的,则返回True。 - inspect.ismethod(object)
如果对象是Python编写的绑定方法则返回True。 - inspect.isfunction(object)
如果对象是Python函数(包含由lambda表达式创建的函数)则返回True。 - inspect.isgeneratorfunction(object) 如果对象是Python生成器函数则返回True。
在3.8版更改:functools.partial()封装的函数现在如果被封装的函数是Python生成器函数则返回True。 - inspect.isgenerator(object)
如果对象是生成器则返回True。 - inspect.iscoroutinefunction(object)
如果对象是协程函数(一个用async def语法定义的函数)则返回True。 - 注意:在3.8版更改:functools.partial()封装的函数现在如果被封装的函数是协程函数则返回True
- inspect.iscoroutine(object)
如果对象是由async def函数创建的协程则返回True。 - inspect.isawaitable(object)
如果该对象可以在await表达式中使用,则返回True。
也可以用来区分基于生成器的协程和常规生成器: - inspect.isasyncgenfunction(object)
如果对象是异步生成器函数则返回True
>>> async def agen():
... yield 1
...
>>> inspect.isasyncgenfunction(agen)
True