02-多继承

1.多继承

python的类可以有两个以上父类,也即有类A,类B,类CC同时继承类A与类B,此时C中可以使用AB中的属性与方法。那么问题来了,如果AB中具有相同名字的方法,这个时候python怎么调用的会是哪个方法呢? 
若为多继承,那么当多个父类中有重复的属性或者方法时,子类的调用结果会含糊不清
多继承顺序。(mro 解析顺序) 

2.类有关的几个函数

#和类有关的几个函数  
    delattr()       # 删除对象属性 (删除器)
    getattr()       # 得到对象的某个属性值 (获取器)
    setattr()       # 给对象添加某个属性值 (设置器 )
    hasattr()       # 判断对象object是否包含名为name的特性
    isinstance()    # 检查对象是否是类的对象,返回True或False
    issubclass()    # 检查一个类是否是另一个类的子类。返回True或False

3.类的特殊方法

#类属性:
    __dict__    # 类的属性(包含一个字典,由类的数据属性组成)
    __doc__     # 类的文档字符串
#类方法:  
    __init__    # 初始化
    __repr__    # 直接返回这个对象  repr() 函数就是调用对象的这个方法
    __str__     # print(obj) 如果类里面定义了__repr__,没有定义 __str__ print(obj)也会返回__repr__的内容,或者说__repr__的优先级更高
    __call__    # Obj() 使实例可被调用
    
#运算符方法
    __add__(self,other)     #x+y
    __sub__(self,other)     #x-y 
    __mul__(self,other)     #x*y  
    __mod__(self,other)     #x%y
    __iadd__(self,other)    #x+=y
    __isub__(self,other)    #x-=y 
    __radd__(self,other)    #y+x
    __rsub__(self,other)    #y-x 
    __imul__(self,other)    #x*=y 
    __imod__(self,other)    #x%=y 
 
原文地址:https://www.cnblogs.com/Jack-Ma/p/8645501.html