在Python中,info()
函数是用于获取对象的信息的。它可以用来查看模块、类、函数、方法等对象的详细信息,包括文档字符串、源码位置、所属模块等。
info()
函数的使用方法如下:
导入inspect
模块:import inspect
定义要获取信息的对象。
使用info()
函数获取对象的信息。
下面是一个示例代码,演示了如何使用info()
函数获取一个函数的信息:
import inspect
def hello(name):
"""打印问候语"""
print(f"Hello, {name}!")
info = inspect.info(hello)
print(info)
输出结果如下:
class hello(builtins.object)
| 打印问候语
|
| Methods defined here:
|
| __init__(self, name)
| Initialize self. See help(type(self)) for accurate signature.
|
| ----------------------------------------------------------------------
| Data descriptors defined here:
|
| __dict__
| dictionary for instance variables (if defined)
|
| __weakref__
| list of weak references to the object (if defined)
|
| ----------------------------------------------------------------------
| Data and other attributes defined here:
|
| __hash__ = None
|
| ----------------------------------------------------------------------
| Data descriptors inherited from builtins.object:
|
| __class__
| type(object) -> the object's type
|
| __delattr__(...)
| x.__delattr__('name') <==> del x.name
|
| __dir__(...)
| __dir__() -> list
| default dir() implementation
|
| __eq__(...)
| x.__eq__(y) <==> x==y
|
| __ge__(...)
| x.__ge__(y) <==> x>=y
|
| __getattribute__(...)
| x.__getattribute__('name') <==> x.name
|
| __gt__(...)
| x.__gt__(y) <==> x>y
|
| __le__(...)
| x.__le__(y) <==> x<=y
|
| __lt__(...)
| x.__lt__(y) <==> x<y
|
| __ne__(...)
| x.__ne__(y) <==> x!=y
|
| __new__ = <built-in method __new__ of type object>
| T.__new__(S, ...) -> a new object with type S, a subtype of T
|
| __repr__(...)
| x.__repr__() <==> repr(x)
|
| __setattr__(...)
| x.__setattr__('name', value) <==> x.name = value
|
| __sizeof__(...)
| __sizeof__() -> int
| size of object in memory, in bytes
|
| __str__(...)
| x.__str__() <==> str(x)
|
| __subclasshook__(...)
| Abstract classes can override this to customize issubclass().
|
| ----------------------------------------------------------------------
| Static methods inherited from builtins.object:
|
| __format__(...) # 返回格式化字符串
| default object formatter
|
| ----------------------------------------------------------------------
| Data descriptors inherited from builtins.object:
|
| __class__ # 类
| type(object) -> the object's type
|
| __delattr__(...)
| x.__delattr__('name') <==> del x.name
|
| __dir__(...)
| __dir__() -> list
| default dir() implementation
|
| __eq__(...)
| x.__eq__(y) <==> x==y
|
| __ge__(...)
| x.__ge__(y) <==> x>=y
|
| __getattribute__(...)
| x.__getattribute__('name') <==> x.name
|
| __gt__(...)
| x.__gt__(y) <==> x>y
|
| __le__(...)
| x.__le__(y) <==> x<=y
|
| __lt__(...)
| x.__lt__(y) <==> x<y
|
| __ne__(...)
| x.__ne__(y) <==> x!=y
|
| __new__ = <built-in method __new__ of type object>
| T.__new__(S, ...) -> a new object with type S, a subtype of T
|
| __repr__(...)
| x.__repr__() <