编写一个班级学生成绩管理的代码,要有文件的创建、文件的复制、文件的删除;可以输入班级成绩,保存文件,利用磁盘文件对学生成绩进行管理,包括查询成绩、修改成绩、显示所有学生成绩;可以实现将一个班级成绩文件
时间: 2024-04-04 22:32:41 浏览: 69
以下是一个简单的班级学生成绩管理的代码,包括文件的创建、文件的复制、文件的删除、输入班级成绩、保存文件、利用磁盘文件对学生成绩进行管理(包括查询成绩、修改成绩、显示所有学生成绩)、将一个班级成绩文件导出为另一个文件。
```python
import os
import shutil
# 定义学生类
class Student:
def __init__(self, name, score):
self.name = name
self.score = score
# 定义班级类
class Class:
def __init__(self, name):
self.name = name
self.students = []
# 添加学生
def add_student(self, student):
self.students.append(student)
# 查找学生
def find_student(self, name):
for student in self.students:
if student.name == name:
return student
return None
# 修改学生成绩
def update_score(self, name, score):
student = self.find_student(name)
if student:
student.score = score
return True
return False
# 显示所有学生成绩
def show_scores(self):
for student in self.students:
print(student.name, student.score)
# 保存成绩到文件
def save_scores(self, filename):
with open(filename, 'w') as f:
for student in self.students:
f.write('{} {}\n'.format(student.name, student.score))
# 从文件加载成绩
def load_scores(self, filename):
with open(filename, 'r') as f:
for line in f:
name, score = line.strip().split()
student = Student(name, int(score))
self.add_student(student)
# 创建一个班级
my_class = Class('Class 1')
# 添加学生
my_class.add_student(Student('Alice', 90))
my_class.add_student(Student('Bob', 80))
my_class.add_student(Student('Charlie', 70))
# 显示所有学生成绩
my_class.show_scores()
# 修改学生成绩
my_class.update_score('Bob', 85)
# 显示所有学生成绩
my_class.show_scores()
# 保存成绩到文件
my_class.save_scores('scores.txt')
# 复制文件
shutil.copy('scores.txt', 'scores_copy.txt')
# 删除文件
os.remove('scores.txt')
# 从文件加载成绩
my_class.load_scores('scores_copy.txt')
# 显示所有学生成绩
my_class.show_scores()
# 导出成绩到另一个文件
my_class.save_scores('scores_export.txt')
```
阅读全文