用python 编写一个学生管理系统,该系统可实现学生信息的注册、查询、删除、修改、退出系统功能。学生信息至少包含:姓名、年龄、学号,除此以外可以适当添加。 设计要求: 1)定义学生类,对学生的属性信息、方法信息进行封装。 2)使用列表存储学生信息。 3)实现对数据的增、删、改、查。 4)要求关键代码有注释。每个函数的声明前加上注释, 描述该函数的功能和用途;类和对象有属性注释、方法注释。 代码中建议做异常处理
时间: 2023-12-16 17:05:12 浏览: 96
好的,我会为您编写一个学生管理系统的 Python 代码,具体如下:
```python
class Student:
def __init__(self, name, age, student_id):
self.name = name
self.age = age
self.student_id = student_id
def __str__(self):
return f"姓名: {self.name} 年龄: {self.age} 学号: {self.student_id}"
class StudentManager:
def __init__(self):
self.students = []
def add_student(self):
"""增加学生信息"""
try:
name = input("请输入姓名: ")
age = int(input("请输入年龄: "))
student_id = int(input("请输入学号: "))
student = Student(name, age, student_id)
self.students.append(student)
print(f"添加学生 {name} 成功!")
except ValueError:
print("输入有误,请重新输入!")
def delete_student(self):
"""删除学生信息"""
try:
student_id = int(input("请输入要删除的学生学号: "))
for student in self.students:
if student.student_id == student_id:
self.students.remove(student)
print(f"删除学生 {student.name} 成功!")
break
else:
print("该学生不存在!")
except ValueError:
print("输入有误,请重新输入!")
def modify_student(self):
"""修改学生信息"""
try:
student_id = int(input("请输入要修改的学生学号: "))
for student in self.students:
if student.student_id == student_id:
name = input(f"请输入修改后的姓名({student.name}): ")
age = input(f"请输入修改后的年龄({student.age}): ")
student.name = name if name else student.name
student.age = int(age) if age else student.age
print(f"修改学生 {student.name} 成功!")
break
else:
print("该学生不存在!")
except ValueError:
print("输入有误,请重新输入!")
def query_student(self):
"""查询学生信息"""
try:
student_id = int(input("请输入要查询的学生学号: "))
for student in self.students:
if student.student_id == student_id:
print(student)
break
else:
print("该学生不存在!")
except ValueError:
print("输入有误,请重新输入!")
def show_students(self):
"""展示所有学生信息"""
for student in self.students:
print(student)
def exit_system(self):
"""退出系统"""
print("谢谢使用,再见!")
def main():
manager = StudentManager()
while True:
print("""
学生管理系统
1. 添加学生信息
2. 删除学生信息
3. 修改学生信息
4. 查询学生信息
5. 展示所有学生信息
6. 退出系统
""")
try:
option = int(input("请输入操作序号: "))
if option == 1:
manager.add_student()
elif option == 2:
manager.delete_student()
elif option == 3:
manager.modify_student()
elif option == 4:
manager.query_student()
elif option == 5:
manager.show_students()
elif option == 6:
manager.exit_system()
break
else:
print("输入有误,请重新输入!")
except ValueError:
print("输入有误,请重新输入!")
if __name__ == '__main__':
main()
```
以上代码实现了一个简单的学生管理系统,包含了学生类和学生管理类。在学生管理类中,提供了添加、删除、修改、查询、展示和退出系统的功能。并且,在用户输入时,加入了异常处理,防止用户错误输入导致程序异常。
阅读全文