class的使用1--创建以及增减属性的值

根据类来创建对象称为实例化;创建好类后,再创建特定的对象。

__init__() ➡️ 前后都是双下划线:使用时,必须初始化属性,后面使用形参也必须使用a.b的形式,而不是单纯使用b。但是对于定义的其他函数,括号里只需要有一个公用的形参来传递即可。在调用函数时,括号里不需要写东西;除非是增删改,本身定义增删改函数时,括号里就有两个参数,我们只需要在调用时填第二个就行。

增删改 -- 3种方法:

1. 直接改

2. 创建一个新的,可以直接输入新数的函数

3. 创建一个新的,但用于增减的函数

【题目】⬇️

学生群体是个大类,有姓名、性别、年龄三个属性;现在加上平时成绩,初始平时成绩 = 0;运用三种方法,使平时成绩变成60

法1:直接插入

# 创建学生大类 类名首字母大写
class Student:
    # 初始化属性
    def __init__(self, name, gender, age):
        self.name = name
        self.gender = gender
        self.age = age
        # 完成题目第一条要求,加入平时成绩属性
        # 法1 直接插入
        self.grade = 0 # 可以直接把0改成60即完成操作
    
    # 定义新函数 打印学生的姓名和年龄
    def get_descriptive(self):
        print(f"This student's name is {self.name} and he/she is {self.age} years old.")
        print(f"The grade is {self.grade}.")

# 定义特定对象
a_student = Student("Lily", "female", 12)
#注意,这里括号里没有东西
a_student.get_descriptive()


        

法2:通过函数修改属性的值

# 创建学生大类 类名首字母大写
class Student:
    # 初始化属性
    def __init__(self, name, gender, age):
        self.name = name
        self.gender = gender
        self.age = age
        # 完成题目第一条要求,加入平时成绩属性
        # 法1 直接插入
        self.grade = 0 # 需要修改直接把0改成60

    #法2:定义函数,修改属性
    def update_grade(self, new_grade):
        self.grade = new_grade

    # 定义新函数 打印学生的姓名和年龄
    def get_descriptive(self):
        print(f"This student's name is {self.name} and he/she is {self.age} years old.")
        print(f"The grade is {self.grade}.")

# 定义特定对象
a_student = Student("Lily", "female", 12)

a_student.update_grade(60)
#注意,这里括号里没有东西
a_student.get_descriptive()





 法3:使用增删函数

# 创建学生大类 类名首字母大写
class Student:
    # 初始化属性
    def __init__(self, name, gender, age):
        self.name = name
        self.gender = gender
        self.age = age
        # 完成题目第一条要求,加入平时成绩属性
        # 法1 直接插入
        self.grade = 0 # 需要修改直接把0改成60

    # 法2:定义函数,修改属性
    def update_grade(self, new_grade):
        self.grade = new_grade

    # 法3:增减函数
    def increment_grade(self, increment_grade): 
        self.grade += increment_grade   

    # 定义新函数 打印学生的姓名和年龄
    def get_descriptive(self):
        print(f"This student's name is {self.name} and he/she is {self.age} years old.")
        print(f"The grade is {self.grade}.")

# 定义特定对象
a_student = Student("Lily", "female", 12)

a_student.update_grade(30)
a_student.increment_grade(30)
#注意,这里括号里没有东西
a_student.get_descriptive()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值