面向对象的编程:
类和对象是面向对象编程的两个主要方面。类创建一个新类型,而对象是这个类的实例。对象可以使用普通的属于对象的变量存储数据。属于一个对象或类的变量被称为域。对象也可以使用属于类的函数来具有功能。这样的函数被称为类的方法。这些术语帮助我们把它们与孤立的函数和变量区分开来。域和方法可以合称为类的属性。
域有两种类型——属于每个实例/类的对象或属于类的本身。分别是实例变量和类变量。
self
类的方法与普通函数只有一个区别——它们必须有一个额外的第一个参数名称,但是调用这个方法的时候你不为这个参数赋值,Python会提供这个值。这个特别的变量指对象本身,它是self。
理解:
假如你有一个类称为MyClass和这个类的一个实例MyObject。当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,这会由Python自动转为MyClass.method(MyObject, arg1,arg2)——这就是self的原理了。