类的定义和使用
前情回顾
在上一节,我们学习了可以用类去封装属性,并基于类创建出一个个的对象来使用,然而实际上类还可以用来封装方法:
1
2
3
4
|
class 类名称:
类的属性 # 类的属性,即定义在类中的变量(成员变量)
类的行为 # 类的行为,即定义在类中的函数(成员方法)
|
示例:
1
2
3
4
5
6
7
8
9
10
|
class Student:
name = None
age = None
def hi(self):
print(f"大家好,我是{self.name}")
##########
stu = Student()
stu.name = '小明'
stu.hi()
|
从今以后,我们就要称定义在类内部的函数为 方法 了。
成员方法的定义语法
有些人肯定要问了:“上面的方法的代码里为什么有个self?”
这就关系到它的定义语法了:
1
2
|
def 方法名(self,形参1,形参2,......形参n):
方法体
|
可以看到,在方法定义的参数列表中,有一个:self 关键字
self 关键字是成员方法定义的时候,必须填写的。
- 它用来表示类对象自身的意思
- 当我们使用类对象调用方法的是,self会自动被python传入
- 在方法内部,想要访问类的成员变量,必须使用self(见上方示例)
注意:self关键字虽然在参数列表中,但是传参的时候可以忽略
例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
class Student:
name = None
age = None
def hi(self):
print(f"大家好,我是{self.name}")
def hello(self,msg):
print(f'hello,大家好,{msg}')
######
stu = Student()
stu.name = '小王'
stu.hi()
stu.hello('很高兴认识大家') # 可以看到此处传参只传给了msg,不用理会self
|