python系列八 类

相关概念

面向对象编程是最有效的软件编写方法之一。

在python中创建一个类和对象是很容易的。

根据类来创建对象被称为实例化。

而,什么是类,什么是对象?

类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例

对象:类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法

创建和使用类

我们创建一个Student类

说明

根据约定,在Python中,首字母大写的名称指的是类

方法 __init__()

>方法__init__(),类中的函数称为方法,与我们前面介绍的函数同样的概念

>在2处的方法__init__()是一个特殊方法,每当根据类Student实例化时,Python都会自动运行它,相当于别的面向对象语言中的构造函数

>__init__()函数,开头和末尾各两个下划线,这是一种约定,旨在避免Python默认方法与普通方法发生名称冲突

>__init__()定了三个参数,self、name、score,注意的是self必不可少,还必须位于其他形参的前面

>每个与类相关联的方法调用都自动传递参数self,它是一个指向实例本身的引用,让我们能够访问类中的属性和方法

>当创建Student实例时,只需要给name、score这两个形参提供值

成员变量

>3.4处定义的两个变量都有前缀self。

>以self为前缀的变量,都可供类中的所有方法使用,也可以通过类的任何实例来访问这些变量,如9处

>self.name=name来获取存储在形参name中的值,并将存储到变量name中,然后该变量被关联到当前创建的类实例中

>可以定义类的变量,相当于C/C++语言的static变量,不加self,在类中定义一个变量就行,如:

普通方法printf_stu_info(self)

>跟以前介绍的函数没啥区别,就是多了个参数self

类的实例化

>在第7处,我们创建了一个名为”yang”的Student。Python执行这句话时,会自动调用__init__()方法,并把name,score属性赋相对来的形参name、score值

方法调用

>在第8处为对象调用类中的方法

访问属性

>在第9处为对象调用类中的属性,也可以修改类中的属性

Python析构函数

析构函数__del__()__del__()在对象销毁的时候被调用,当对象不再被使用时,__del__()方法运行

面向对象重要的是抽象,封装,所以定义一个好的类很重要。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180822G1UPFN00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券