后端开发
·4 天前Day 16
🧭行动:继续学习面对对象的开发
🤓体会:面向过程与面对对象的差别不小,目前还不知道代码更复杂点的面对对象方法的优势
🧑💻代码:
# import math
#学生类
class Student:
def __init__(self,name,chinese,math,english):
self.name = name
self.chinese = chinese
self.math = math
self.english = english
def __str__(self):
return f"姓名{self.name} | 语文:{self.chinese} | 数学:{self.math} | 英语:{self.english} | 总分:{self.chinese + self.math + self.english}"
#修改成绩
def update_score(self,chinese =None,math=None,english=None):
if chinese is not None:
self.chinese = chinese
if math is not None:
self.math = math
if english is not None:
self.english = english
#教务管理系统
class Management:
system_version = "1.0"
system_name = "教务系统"
def __init__(self):
self.student_list = []#记录学生成绩
#增加
def add_student(self):
name = input("请输入学生姓名: ")
for s in self.student_list:
if s.name == name:
print("已存在该学生")
return
chinese = int(input("请输入学生语文成绩: "))
math = int(input("请输入学生数学成绩: "))
english = int(input("请输入学生英语成绩: "))
if 0 <= chinese <=100 and 0 <= math <= 100 and 0 <= english <= 100:
stu = Student(name,chinese,math,english)
self.student_list.append(stu)
print("提交成功!")
else:
print("成绩不合理,无法添加")
#删除
def delete_student(self):
name = input("输入学生姓名:")
for s in self.student_list:
if s.name == name:
self.student_list.remove(s)
print("删除成功!")
return
print("未找到该学生,删除失败")
#修改
def update_student(self):
name = input("输入学生姓名:")
for s in self.student_list:
if s.name == name:
print(f"当前成绩为:{s}")
chinese = int(input("语文成绩:"))
math = int(input("数学成绩:"))
english = int(input("英语成绩:"))
if 0 <= chinese <= 100 and 0 <= math <= 100 and 0 <= english <= 100:
s.update_score(chinese,math,english)
print("修改成功!")
return
else:
print("成绩不合理,无法添加")
return
print("未找到该学生,修改失败")
#查询
def query_student(self):
name = input("输入学生姓名:")
for s in self.student_list:
if s.name == name:
print(f"学生信息为{s}")
return
print("未找到该学生,查询失败")
#展示全部学生信息
def list_student(self):
for s in self.student_list:
print(s)
#运行系统
def run(self):
print(f"欢迎使用教务管理系统 V{Management.system_version}")
while True:
print()
print("# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #")
print("# 1.添加学生 2.删除学生 3.修改学生 4.查询指定学生 5.查询所有学生 6.退出系统 #")
print("# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #")
print()
choice = input("请选择要执行的操作,输入1-6:")
match choice:
case "1": # 添加学生
self.add_student()
case "2": # 删除学生
self.delete_student()
case "3": # 修改学生
self.update_student()
case "4": # 查询指定学生
self.query_student()
case "5": # 查询所有学生
self.list_student()
case "6":
print("Bye ~")
break
case _:
print("无效指令")
#测试
if __name__ == "__main__":
management = Management()
management.run()
3
1
分享
操作
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
