【Python基础编程209 ● 面向对象 ● 给对象添加属性的3种方式】
---------Python基础编程---------
Author : AI菌
【内容讲解】
给对象添加属性的3种方式:
1. 在 __init__方法中,通过self添加属性(推荐的方式)
2. 在其它方法种, 通过self添加属性 (不推荐,调用可能会出错)
3. 在类的外面, 通过对象添加属性 (不推荐,调用可能会出错)
【代码实现】
class Student: """ 给对象添加属性的3种方式: 1. 在 __init__方法中,通过self添加属性(推荐的方式) 2. 在其它方法种, 通过self添加属性 (不推荐,调用可能会出错) 3. 在类的外面, 通过对象添加属性 (不推荐,调用可能会出错) """ # 方式一: 在 __init__方法中,通过self添加属性(推荐的方式) def __init__(self, name, age, gender): self.name = name self.age = age self.gender = gender # 方式二: 在其它方法种, 通过self添加属性 (不推荐) def study(self, course): # 第一次调用study()方法时,会给对象添加属性weight,并赋值为200 self.weight = 200 print(f"学习{course}") # 访问属性stu_num print(self.stu_num) s1 = Student("robot", 20, "女") print(s1.name) print(s1.age) print(s1.gender) # 调研study()方法 # 第一次调用study()方法时,会给对象添加属性weight,并赋值为200 # 调用study()方法会报错: 'Student' object has no attribute 'stu_num' # 在方式三没有执行之前,s1对象还没有stu_num属性 # 此时, 在study()方法中打印该属性,就会报错 s1.study("AI") # study()方法中,添加了属性weight,不会报错 print(s1.weight) # 方式三: 在类的外面, 通过对象添加属性 (不推荐) # 第一次给s1.stu_num赋值,就是在给对象s1添加属性stu_num,并赋值 s1.stu_num = 1001 print(s1.stu_num)
【往期精彩】
▷【Python基础编程196 ● 读取文件的4种方式】
▷【Python基础编程197 ● 读取文件的4种方式】
▷【Python基础编程198 ● 读取文件的4种方式】
▷【Python基础编程199 ● Python怎么读/写很大的文件】
▷【Python基础编程200 ● 读取文件的4种方式】
▷【Python基础编程201 ● 读取文件的4种方式】
▷【Python基础编程202 ● 读取文件的4种方式】
▷【Python基础编程203 ● 读取文件的4种方式】
【加群交流】