编写程序实现学生成绩简单管理系统。本系统主要实现以下功能:(1)录入学生信息:用户可以自由输入学生信息到系统中。 (2打印学生信息:按照规定的格式展示系统中的学生信息。(3)保存学生信息:将系统中的学生信息保存到
时间: 2024-03-25 10:41:56 浏览: 41
文件中,以便下次使用时可以读取。(4)查询学生信息:根据学生姓名或学号查询学生信息。(5)修改学生信息:根据学生姓名或学号修改学生信息。(6)删除学生信息:根据学生姓名或学号删除学生信息。
以下是一个简单的实现该功能的Python程序:
```python
# 定义一个学生类
class Student:
def __init__(self, name, number, grade):
self.name = name
self.number = number
self.grade = grade
def __str__(self):
return f"{self.name}({self.number}): {self.grade}"
# 定义一个学生管理类
class StudentManager:
def __init__(self):
self.students = []
# 录入学生信息
def add_student(self):
name = input("请输入学生姓名:")
number = input("请输入学生学号:")
grade = input("请输入学生成绩:")
student = Student(name, number, grade)
self.students.append(student)
print("添加成功!")
# 打印学生信息
def print_students(self):
for student in self.students:
print(student)
# 保存学生信息到文件
def save_students(self):
with open("students.txt", "w") as f:
for student in self.students:
f.write(f"{student.name},{student.number},{student.grade}\n")
print("保存成功!")
# 从文件中读取学生信息
def load_students(self):
with open("students.txt", "r") as f:
for line in f:
name, number, grade = line.strip().split(",")
student = Student(name, number, grade)
self.students.append(student)
print("读取成功!")
# 查询学生信息
def search_student(self):
keyword = input("请输入要查询的学生姓名或学号:")
for student in self.students:
if keyword in [student.name, student.number]:
print(student)
break
else:
print("未找到该学生!")
# 修改学生信息
def edit_student(self):
keyword = input("请输入要修改的学生姓名或学号:")
for student in self.students:
if keyword in [student.name, student.number]:
name = input(f"请输入{student.name}的新姓名:")
number = input(f"请输入{student.name}的新学号:")
grade = input(f"请输入{student.name}的新成绩:")
student.name = name
student.number = number
student.grade = grade
print("修改成功!")
break
else:
print("未找到该学生!")
# 删除学生信息
def delete_student(self):
keyword = input("请输入要删除的学生姓名或学号:")
for student in self.students:
if keyword in [student.name, student.number]:
self.students.remove(student)
print("删除成功!")
break
else:
print("未找到该学生!")
# 测试学生管理系统
manager = StudentManager()
manager.load_students() # 从文件中读取学生信息
while True:
print("1. 录入学生信息")
print("2. 打印学生信息")
print("3. 保存学生信息")
print("4. 查询学生信息")
print("5. 修改学生信息")
print("6. 删除学生信息")
print("0. 退出程序")
choice = input("请输入您的选择:")
if choice == "1":
manager.add_student()
elif choice == "2":
manager.print_students()
elif choice == "3":
manager.save_students()
elif choice == "4":
manager.search_student()
elif choice == "5":
manager.edit_student()
elif choice == "6":
manager.delete_student()
elif choice == "0":
break
else:
print("请输入正确的选项!")
```
该程序将学生信息保存到文件`students.txt`中,每行一个学生,每个学生的信息用逗号分隔。在程序启动时会自动从文件中读取学生信息,程序结束时会自动保存学生信息到文件中。
阅读全文