8.1 Python 类 对象 属性 方法

8.1 Python 类 对象 属性 方法

8.1.1 什么是类?

类的中文释义:许多相似或相同事物的综合。这些事物各不相同,但具有一些共同的特征或行为。
生活中的类
植物类:百合花、玫瑰花、栀子花。
水果类:苹果、橘子、西瓜。
车:面包车、轿车、跑车。

Python中的类
整数类:1,2,3。
浮点数类:1.1,2.2,3.3。

1、2、3这些数据都属于整数(int)类,虽然值各不一样,但都有能进行加减运算的相同点。
‘1’、‘2’、'3’这些数据都属于字符串(str)类,虽然值各不一样,但都有能进行拼接的相同点。

在这里插入图片描述

使用 type 函数查看Python数据类型

# 1、2 属于整数(int)类
print(type(1))
print(type(2))

# '1'、'2'、属于字符串(str)类
print(type('1'))
print(type('2'))

<class 'int'>
<class 'int'>
<class 'str'>
<class 'str'>

class [klɑːs] :类别、分类、班级。
class 在Python中就代表类别。
我们之前学的数据类型像整数、浮点数、字符串、列表、元组等实际上就是不同的类别。
<class 'int'>表示类别为整数。
<class 'str'>表示类别为字符串。

8.1.2 什么是对象?

类是对一类事物的概括。
类里的每一事物或每个单独的个体就是对象。

我不是很喜欢吃水果。——水果是类。
我不喜欢吃苹果。——苹果是对象。

你买车了吗?——车是类。
我买的宝马车。——宝马车是对象。

1、2都是整数(int)。——整数是类,1和2是对象。

8.1.3 类的作用

类的作用:类可以创建出一个具体的对象。
类是抽象的,对象是具体的。

我们这样理解类
类就是模板,是设计图纸。
类 = 设计图纸

工人根据汽车的设计图纸可以生产出款式、颜色、型号各不相同的汽车。
类就是制造汽车的图纸。
图纸不能上路行驶,类是抽象的不能直接使用的。它的作用就是负责生产汽车,即创建对象。
对象就是汽车,是具体的,是根据图纸生产出来的,是可以上路行驶的。

在这里插入图片描述
在这里插入图片描述

8.1.4 类的语法

关键字def 可以定义一个函数。
关键字class 可以定义一个类。
类的语法包含了四个要素:
① 关键字"class";
② 类名;
③ 英文冒号":";
④ 代码块(即类里面的代码内容)。

在这里插入图片描述

注意
class 后面有一个空格。
注意代码块前有4个空格的缩进。

重点注意类名的首字母必须是大写。
重点注意类名的首字母必须是大写。
重点注意类名的首字母必须是大写。

类名的命名规则
1.类的名字和函数名一样,可以由数字、字母和下划线组成;
2.不能以数字开头;
3.不能使用关键字命名,Python中的内置函数就是关键字。
4.考虑代码的可读性,最好使用能代表该类功能的单词,让人见其名知其意。例如用student代表学生类。

8.1.5 类的属性和方法

对象的特征我们称之为属性。
人的属性(特征):高、矮、胖、瘦、年龄等。
汽车的属性(特征):颜色、大小等。

对象的行为、功能我们称之为方法。
人的方法(行为):唱歌、跳舞、跑步、打篮球。
汽车的方法(功能):向前开、刹车、倒车、左转、右转。

类的属性就是定义在类中的变量

定义一个汽车类 Cars :它的特征怎样,就是这个类的属性;它能做什么?就是这个类的方法。

# 定义类的语法:class 类名:
# 定义一个车类 Cars:类名要大写,所以Cars 的C 要大写
class Cars:
    # 属性(汽车的特征:外形构造)
    # 颜色为红色
    color = '红'
    # 形状是小轿车
    shape = '小'

color[ˈkʌlə]:颜色。
shape [ʃeɪp]:外观、形状。
上述代码中,像 color、shape 这些在类中被定义的变量,就是类 Cars 中构造的属性。
直接在类中对一个变量赋值就定义了类的属性。
定义了类的属性,就相当于在汽车设计图里设定这辆车被生产出来后的外形结构。

类的方法就是定义在类中的函数

定义函数的语法和定义类的语法是一样的,只是关键字不一样。
在这里插入图片描述

类中的方法其实就是一个自定义函数,只是称呼不同而已。
在某个模块之内类之外定义一个函数,我们称为函数。(模块后面会学)
在函数中自定义一个函数,我们称为嵌套函数。
在类中自定义一个函数,我们称为方法。

定义汽车的3个方法(功能):drive(向前开),stop(刹车),back(倒车)。

没有类的情况下,函数还是函数。

# 实现前进功能的零部件(函数):drive
def drive():
    print('汽车正在向前开!')

# 实现刹车功能的零部件(函数):stop
def stop():
    print('汽车停车了!')

# 实现倒车功能的零部件(函数):back
def back():
    print('汽车正在倒车!')

# 调用函数语法:函数名()
drive()
stop()
back()

【终端输出】

汽车正在向前开!
汽车停车了!
汽车正在倒车!

自定义函数就相当于在生产汽车的时候为汽车配置的功能,drive(向前开),stop(刹车),back(倒车)。
汽车虽然具备了这3个功能,但是我们开车的时候要通过挂挡的这个动作来告诉汽车我现在需要哪个功能。
调用函数就相当于挂挡。
调用函数=挂挡。

8.1.6 定义类的方法

汽车的零部件生产好了,我们下步就进行组装,即将函数放到类中去。

# 类的方法
class 类名:
    def 方法名(self, 参数...):
        代码块

注意:定义类和定义函数后都跟英文冒号,冒号后都有4个空格缩进。因此代码前有8个空格的缩进。

# 定义类的语法:class 类名:
# 定义一个车类 Cars:类名要大写,所以Cars 的C 要大写
class Cars:
    # 属性(汽车的特征:外形构造)
    # 颜色为红色
    color = '红'
    # 形状是小轿车
    shape = '小'

    # 实现前进功能的零部件(方法):drive
    def drive(self):
        print('汽车正在向前开!')
    # 实现刹车功能的零部件(方法):stop
    def stop(self):
        print('汽车停车了!')
    # 实现刹倒车功能的零部件(方法):back
    def back(self):
        print('汽车正在倒车!')

    

把函数放到类的下面,函数就变成了类的方法。
方法和函数在语法结构一致,但参数略有区别。
类中的方法(自定义函数)里第一参数通常为 self 参数,它用来指对象本身。这背后涉及的原理较多,你可以当作一个固定格式。

上述代码定义了三个类的方法(drive、stop、back),也就是三个在类中定义的函数。
分别实现了这辆汽车的:前进、停车、倒车三个功能。
学会调用类的方法,我们就能把汽车开起来了!

  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值