Python 类 --基础与要点

1:2.x与3.x区别:

  2.x:老式类,都继承自object,继承机制为深度优先

  3.x:新式类不需要写(object),继承机制为广度优先

2:类说明:

  在定义类下用"""......"""包裹

  查看方法:classname.__doc__ or help(classname)

3:classname()即是实例化,一般会赋值给一个变量

4:实例化过程:

  1):__new__()方法建立实例

  2):__init__()方法初始化实例

  *自定义元类即是改变这两个方法其一或both

4:类里定义普通方法记得第一个参数都是self

5:类的特殊属性:

  __doc__:类的文档属性

  __name__:类的名称

  __base__:分类名称

6:__xxx__()为特殊方法-->有详解

  e.g:__len__()    len([1,2,3]) == [1,2,3].__len__()

    __add__()

    __call__()    使类可以象函数一样调用

    __slot__()   限制类可以添加的属性

    __iter__ 如果一个类想被用于for ... in循环,类似list或tuple那样,就必须实现一个__iter__()方法,该方法返回一个迭代对象

7:子类不能够继承父类的私有属性和方法!

原文地址:https://www.cnblogs.com/pengsixiong/p/4823319.html