python中的class类

示例代码

python 复制代码
# 定义一个学生类,用于管理学生的基本信息和成绩
class Student:
    # 初始化方法:创建学生实例时自动调用,初始化核心属性
    # 参数说明:self是实例本身(必须有),name是学生姓名,student_id是学号
    def __init__(self, name, student_id):
        # 实例属性:学生姓名
        self.name = name
        # 实例属性:学生学号
        self.student_id = student_id
        # 实例属性:成绩字典,初始三门科目成绩均为0
        self.grades = {"语文":0,"数学":0,"英语":0}

    # 定义设置成绩的方法:用于修改指定科目的成绩
    # 参数说明:course是科目名称,grade是要设置的成绩
    def set_grade(self, course, grade):
        # 校验:只有科目在成绩字典中时,才允许修改成绩
        if course in self.grades:
            self.grades[course] = grade

    # 定义打印成绩的方法:格式化输出学生的所有成绩信息
    def print_grades(self):
        # 修复原代码小问题:学号部分需用{self.student_id}嵌入f-string
        print(f"学生{self.name}(学号:{self.student_id})的成绩是:")
        # 遍历成绩字典,逐行打印科目和对应成绩
        for course in self.grades:
            print(f"{course}: {self.grades[course]}分")

# 实例化:创建名为"小陈"、学号"100618"的学生对象
chen = Student("小陈","100618")
# 调用set_grade方法:给小陈设置语文成绩92分
chen.set_grade("语文",92)
# 调用set_grade方法:给小陈设置数学成绩94分
chen.set_grade("数学",94)
# 调用print_grades方法:打印小陈的完整成绩信息
chen.print_grades()
相关推荐
idwangzhen2 小时前
GEO优化系统哪家更专业
python·信息可视化
2501_933329552 小时前
Infoseek数字公关AI中台技术解析:如何构建企业级舆情监测与智能处置系统
开发语言·人工智能
m0_706653232 小时前
基于C++的爬虫框架
开发语言·c++·算法
梵刹古音2 小时前
【C语言】 数据类型的分类
c语言·开发语言
diediedei2 小时前
嵌入式数据库C++集成
开发语言·c++·算法
xie0510_2 小时前
string模拟实现
开发语言·c++·算法
diediedei2 小时前
机器学习模型部署:将模型转化为Web API
jvm·数据库·python
FAFU_kyp2 小时前
RISC0_ZERO项目在macOs上生成链上证明避坑
开发语言·后端·学习·macos·rust
m0_561359672 小时前
使用Python自动收发邮件
jvm·数据库·python