类和对象
在 Python 中「类」是无数个相似个体的集合,其中的每个个体叫做「实例」。
我们可以通过下图的例子来加深理解:

在生活中,我们给事物分类会按照特征和行为来分。在 Python 中也是,特性被称为「属性」(attribute),行为被称为「方法」(method)。
以在 Python 中创建一个“人类”为例,它的语法如下:
class Human: # 类的创建:class + 类名,下面语句要缩进
arms = 2 # 类的属性创建:通过赋值语句
hair = "各种颜色的头发"
def walk(self): # 方法的具体执行过程
print("说各种语言")
human = Human()
human.walk()
和我们正常写代码类似,只不过把变量和函数写到了类中,它们的名称也变为了属性和方法。
需要注意的是,定义方法时必需有一个 self 参数作为第一个参数,如果没有的话,在调用该方法时将会报错。
很多同学在定义类中的方法时,总忘了这个 self,导致报错。大家一定要牢记这一点。
同时,按照一般的命名规范,类名的首字母要大写,以便可以轻松地辨认出它是个类。
当我们需要调用类中的属性和方法时,需要进行「类的实例化」,语法如下:
self:
代表对象本身。
当前实例化的对象是谁,self就是谁。
每个对象都是独立的。
实例属性(只有对象可以访问):self.XXX(类定义中) 或者 对象.XXX
类属性(类和实例都可以访问):类名.XX
在 Python 的类中,有一种特殊的方法——初始化方法。它的格式是
def init(self):
,方法名由 init(initialize 的缩写,初始化的意思)加左右两边的 双下划线 组成。
注意:初始化方法的 init 前后各有 两个 下划线,是
init 而不是 init
我们通常会在 初始化方法 里完成类属性初始值的设置。
__init__ 方法:
魔法 - 在创建对象的同时,自动调用,做初始化的动作。
实例化类,创建对象:
1、创建对象的语法:
对象名 = 类名(参数) # __init__函数有参传参,没参不用传。
2、可以创建多个对象。
3、每个对象都是独立的。每个对象都拥有类里的所有方法。
4、每个对象的属性、方法调用:
对象名.方法()
对象名.属性
1万+

被折叠的 条评论
为什么被折叠?



