类的初始化过程
在执行类的初始化的时候,比如a = A(),先是执行了__new__(cls) 方法,根据传入的cls来分配空间,然后再执行对象的__init__(self) 方法。cls为类,self为类实例,类函数需要传入self,类似于C++里的this指针。
类内的三种方法
- 普通的函数,def f(self)
- 静态函数@staticmethod, def f()
- 类函数@classmethod,def f(cls)
后面两种函数的区别
在执行类的初始化的时候,比如a = A(),先是执行了__new__(cls) 方法,根据传入的cls来分配空间,然后再执行对象的__init__(self) 方法。cls为类,self为类实例,类函数需要传入self,类似于C++里的this指针。