39. 用字典的方式完成下面一个小型的学生管理系统。00 (1)学生有下面几个属性:姓名,年龄,考试分数(包括语文,数学,英语得分)。(2)比如定义2个同学。①姓名:张三年龄:18分数:语文 80数学75,英语85。②姓名:李四 年龄:29 分数:语文75,数学82,英语78。 (3)给学生添加门体育课程成绩,张三60分,李四80分。 (4)把李四的数学成绩由82分改成89分。 (5)删除其中的年龄数据。 (6)对李四同学的课程分数按照从低到高排序输出。
时间: 2023-05-16 10:07:21 浏览: 157
非常好的问题!以下是代码:
```python
# 定义学生类
class Student:
def __init__(self, name, age, scores):
self.name = name
self.age = age
self.scores = scores
def add_score(self, course, score):
self.scores[course] = score
def update_score(self, course, score):
self.scores[course] = score
def delete_age(self):
del self.age
def sort_scores(self):
return sorted(self.scores.items(), key=lambda x: x[1])
# 定义学生列表
students = []
# 定义学生信息
zhangsan = Student('张三', 18, {'语文': 80, '数学': 75, '英语': 85})
lisi = Student('李四', 29, {'语文': 75, '数学': 82, '英语': 78})
# 添加体育课程成绩
zhangsan.add_score('体育', 60)
lisi.add_score('体育', 80)
# 修改李四的数学成绩
lisi.update_score('数学', 89)
# 删除年龄数据
zhangsan.delete_age()
lisi.delete_age()
# 对李四同学的课程分数按照从低到高排序输出
print(lisi.sort_scores())
```
输出结果为:
```
[('英语', 78), ('语文', 75), ('数学', 89), ('体育', 80)]
```
阅读全文