![每个人的Python:数学、算法和游戏编程训练营](https://wfqqreader-1252317822.image.myqcloud.com/cover/137/44510137/b_44510137.jpg)
上QQ阅读APP看书,第一时间看更新
1.5.1 Python中的类
关于类的概念,我们前面有提到过,类将属性和方法聚合在一起。在Python中,使用class关键字来定义类,示例代码如下:
![](https://epubservercos.yuewen.com/33C5B1/23721678209556606/epubprivate/OEBPS/Images/Figure-T36_28419.jpg?sign=1738894191-zxzMq42dRAJvAcXvIqTnnXZET3Mlhhh8-0-398c0a80df0d08ee7951c5002ae0678b)
运行上面的代码,在控制台将输出如下信息:
奔驰开始启动,时速100公里/时
上面的示例代码中包含许多重要的知识点,首先,在类内直接定义的变量被称为类属性,这些属性是所有类实例对象所共享的,通常用来存储某些静态的信息,在访问时,使用类名直接访问,如下:
print(Car.className)
类中定义的函数被称为实例方法,这些方法是由类的实例对象进行调用的,其中__init__是一个非常特殊的方法,它是初始化方法,当我们构造类的实例对象的时候,实际上就是调用了初始化方法,在初始化方法中可以对类的实例属性进行设置。还有一点需要注意,类中定义的方法中的第一个参数默认会传入当前实例对象本身,这个参数是系统默认传递的,在调用方法时我们不用显式地进行传递。
从另一种意义上讲,类也可以理解为对象的模板。对于大量功能相似、属性不同的数据对象,使用类可以快速地生成。以上面的示例代码为例,我们要创建一个新的汽车对象将十分简单:
car2 = Car(200, "高端大奔") car2.run()
其实,与初始化方法对应,类中还可以定义一个类实例销毁的方法:__del__。这个方法当类的实例对象被销毁时会被调用,我们可以在其中处理资源的释放等任务,在Python中,使用del关键字可以删除数据,示例代码如下:
![](https://epubservercos.yuewen.com/33C5B1/23721678209556606/epubprivate/OEBPS/Images/Figure-T36_28424.jpg?sign=1738894191-5mSNn40KXUZfZ8RKz19X0aKYuniElvGE-0-86d460818c69d44a9ce913a3cf02584a)