1、__init__ : 构造函数,在生成对象时调用

 该方法是在对象产生之后才会执行,只用来为对象进行初始化操作,可以有任意代码,但不一定有返回值。

 

所谓初始化构造函数就是在构造对象的同时被对象自动调用,完成对事物的初始化,一个类只要生成一个类对象,它一定会调用初始化构造函数. 
特点: 
1>一个类中只能有一个初始化构造函数 
2>不能有返回值 
3>可以用它来为每个实例定制自己的特征 

 

 

class Chinese:
    country = 'china'
    def __init__(self,name,sex,age):
        self.name = name
        self.sex = sex
        self.age = age
    def tell_info(self):
        info = f"""
        国籍:{self.country}
        姓名:{self.name}
        性别:{self.sex}
        年龄:{self.age}
        """
        print(info)
s1 = Chinese('alex','man','22')
s2 = Chinese('alex2','woman','23')
s3 = Chinese('alex3','man','21')

 2、_mro_解析方法调用的顺序

继承的实现原理(多继承查找)

>>> F.mro() #等同于F.__mro__
(<class '__main__.C'>, <class '__main__.A'>, <class '__main__.B'>, <class 'object'>)

3、__call__

 

类的专有方法:

  • __init__ : 构造函数,在生成对象时调用
  • __del__ : 析构函数,释放对象时使用
  • __repr__ : 打印,转换
  • __setitem__ : 按照索引赋值
  • __getitem__: 按照索引获取值
  • __len__: 获得长度
  • __cmp__: 比较运算
  • __call__: 函数调用
  • __add__: 加运算
  • __sub__: 减运算
  • __mul__: 乘运算
  • __div__: 除运算
  • __mod__: 求余运算
  • __pow__: 乘方
posted on 2018-09-04 21:46  foremost  阅读(1497)  评论(0编辑  收藏  举报