目录
一、引入库
dir为python内置函数,不需要引入库
inspect是第三方库,需要引入库inspect
import inspect
二、代码示例
import inspect
from device import Device
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def get_name(self):
return self.name
def set_name(self, name):
self.name = name
def get_age(self):
return self.age
if __name__ == '__main__':
print(dir(Person))
print(inspect.getmembers(Person))
dir(Device)
inspect.getmembers(Device)
Device引入的是一个模块,此处没有贴入相关代码。
三、结果显示
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'get_age', 'get_name', 'set_name']
[('__class__', <class 'type'>), ('__delattr__', <slot wrapper '__delattr__' of 'object' objects>), ('__dict__', mappingproxy({'__module__': '__main__', '__init__': <function Person.__init__ at 0x00000282E9B7D8B0>, 'get_name': <function Person.get_name at 0x00000282E9C278B0>, 'set_name': <function Person.set_name at 0x00000282E9C48670>, 'get_age': <function Person.get_age at 0x00000282E9C48700>, '__dict__': <attribute '__dict__' of 'Person' objects>, '__weakref__': <attribute '__weakref__' of 'Person' objects>, '__doc__': None})), ('__dir__', <method '__dir__' of 'object' objects>), ('__doc__', None), ('__eq__', <slot wrapper '__eq__' of 'object' objects>), ('__format__', <method '__format__' of 'object' objects>), ('__ge__', <slot wrapper '__ge__' of 'object' objects>), ('__getattribute__', <slot wrapper '__getattribute__' of 'object' objects>), ('__gt__', <slot wrapper '__gt__' of 'object' objects>), ('__hash__', <slot wrapper '__hash__' of 'object' objects>), ('__init__', <function Person.__init__ at 0x00000282E9B7D8B0>), ('__init_subclass__', <built-in method __init_subclass__ of type object at 0x00000282E9A38220>), ('__le__', <slot wrapper '__le__' of 'object' objects>), ('__lt__', <slot wrapper '__lt__' of 'object' objects>), ('__module__', '__main__'), ('__ne__', <slot wrapper '__ne__' of 'object' objects>), ('__new__', <built-in method __new__ of type object at 0x00007FFCBFED3E00>), ('__reduce__', <method '__reduce__' of 'object' objects>), ('__reduce_ex__', <method '__reduce_ex__' of 'object' objects>), ('__repr__', <slot wrapper '__repr__' of 'object' objects>), ('__setattr__', <slot wrapper '__setattr__' of 'object' objects>), ('__sizeof__', <method '__sizeof__' of 'object' objects>), ('__str__', <slot wrapper '__str__' of 'object' objects>), ('__subclasshook__', <built-in method __subclasshook__ of type object at 0x00000282E9A38220>), ('__weakref__', <attribute '__weakref__' of 'Person' objects>), ('get_age', <function Person.get_age at 0x00000282E9C48700>), ('get_name', <function Person.get_name at 0x00000282E9C278B0>), ('set_name', <function Person.set_name at 0x00000282E9C48670>)]