3.魔术属性

魔术属性

# 魔术属性

class Father():
    pass
class Mother():
    pass
class Son(Father,Mother):
    """
好儿子,继承优秀基因
    """
    def name(self,func):
        res = func.__name__
        print(res,type(res))

obj = Son()
# 1. __dict__ 获取对象或类的内部成员结构
print(obj.__dict__) #{}
print(Son.__dict__)

# 2. __doc__ 获取对象或类的内部文档(说明)
print(obj.__doc__) #好儿子,继承优秀基因
print(Son.__doc__) #好儿子,继承优秀基因

# 3.__name__ 获取类名或函数名 返回字符串
def abc():
    pass
obj.name(abc) #abc <class 'str'>
obj.name(Father) #Father <class 'str'>

# 4. __class__ 获取当前对象所属的类
print(obj.__class__) #<class '__main__.Son'>

# 5. __bases__ 获取一个类直接继承的所有父类,返回元组
print(Son.__bases__) #(<class '__main__.Father'>, <class '__main__.Mother'>)

原文地址:https://www.cnblogs.com/jia-shu/p/14157263.html