用Python写一个学生管理系统功能包括新增学生信息,修改学生信息,删除学生信息,查看所有学生信息,查看单个学生信息,将信息保存到文本文档里
时间: 2024-03-16 22:41:23 浏览: 24
好的,以下是一个简单的学生管理系统的 Python 实现,包括新增学生信息、修改学生信息、删除学生信息、查看所有学生信息、查看单个学生信息和将信息保存到文本文档:
```python
import os
class Student:
def __init__(self, name, age, gender, score):
self.name = name
self.age = age
self.gender = gender
self.score = score
class StudentManager:
def __init__(self):
self.students = []
def add_student(self, student):
self.students.append(student)
print("添加成功!")
def modify_student(self, name):
for student in self.students:
if student.name == name:
student.age = input("请输入修改后的年龄:")
student.gender = input("请输入修改后的性别:")
student.score = input("请输入修改后的成绩:")
print("修改成功!")
return
print("没有找到该学生!")
def delete_student(self, name):
for student in self.students:
if student.name == name:
self.students.remove(student)
print("删除成功!")
return
print("没有找到该学生!")
def show_all_students(self):
print("所有学生信息如下:")
for student in self.students:
print("姓名:{},年龄:{},性别:{},成绩:{}".format(student.name, student.age, student.gender, student.score))
def show_single_student(self, name):
for student in self.students:
if student.name == name:
print("该学生信息如下:")
print("姓名:{},年龄:{},性别:{},成绩:{}".format(student.name, student.age, student.gender, student.score))
return
print("没有找到该学生!")
def save_to_file(self):
if len(self.students) == 0:
print("没有可保存的学生信息!")
return
with open("students.txt", "w") as f:
for student in self.students:
f.write("{},{},{},{}\n".format(student.name, student.age, student.gender, student.score))
print("保存成功!")
def load_from_file(self):
if not os.path.exists("students.txt"):
print("没有找到保存的学生信息!")
return
with open("students.txt", "r") as f:
lines = f.readlines()
for line in lines:
info = line.strip().split(",")
student = Student(info[0], info[1], info[2], info[3])
self.students.append(student)
print("加载成功!")
if __name__ == "__main__":
manager = StudentManager()
manager.load_from_file()
while True:
print("="*30)
print("学生管理系统")
print("1. 添加学生信息")
print("2. 修改学生信息")
print("3. 删除学生信息")
print("4. 查看所有学生信息")
print("5. 查看单个学生信息")
print("6. 保存学生信息到文件")
print("0. 退出")
print("="*30)
choice = input("请输入操作编号:")
if choice == "1":
name = input("请输入学生姓名:")
age = input("请输入学生年龄:")
gender = input("请输入学生性别:")
score = input("请输入学生成绩:")
student = Student(name, age, gender, score)
manager.add_student(student)
elif choice == "2":
name = input("请输入要修改的学生姓名:")
manager.modify_student(name)
elif choice == "3":
name = input("请输入要删除的学生姓名:")
manager.delete_student(name)
elif choice == "4":
manager.show_all_students()
elif choice == "5":
name = input("请输入要查看的学生姓名:")
manager.show_single_student(name)
elif choice == "6":
manager.save_to_file()
elif choice == "0":
break
else:
print("输入有误,请重新输入!")
```
运行该程序,即可进入学生管理系统的界面,进行各种操作。具体使用方法请参考程序中的注释。