Python 学生信息管理系统 - 轻松管理学生数据
使用 Python 开发的学生信息管理系统
本系统旨在帮助老师轻松管理学生信息,提供录入、修改、删除、查找和浏览等功能,并实时将数据保存到本地文件中方便查看。
系统功能模块
该学生信息管理系统包含以下六大模块:
- 录入学生信息模块:添加学生的学号、姓名、班级、电话、家庭住址、宿舍号等信息,并保存到文件中。
- 修改学生信息模块:根据学生学号查找学生信息,并修改其班级、电话、家庭住址、宿舍号等信息,并保存到文件中。
- 删除学生信息模块:根据学生学号或姓名删除学生信息,并保存到文件中。
- 查找学生信息模块:根据学生学号或姓名查找学生信息,并显示相关信息。
- 浏览所有学生信息模块:显示所有学生的学号、姓名、班级、电话、家庭住址、宿舍号等信息,每个学生信息以行的形式对齐输出。
- 退出系统模块:退出系统。
代码实现
class Student:
'学生类,包含学号、姓名、班级、电话、家庭住址、宿舍号等属性。'
def __init__(self, id, name, classname, phone, address, dorm):
self.id = id
self.name = name
self.classname = classname
self.phone = phone
self.address = address
self.dorm = dorm
class Manage:
'管理类,包含录入、修改、删除、查找、浏览所有学生信息等方法。'
def __init__(self):
self.filename = 'students.txt'
self.students = []
def load_data(self):
'从文件中读取学生信息。'
try:
with open(self.filename, 'r', encoding='utf-8') as f:
for line in f:
line = line.strip()
if line:
id, name, classname, phone, address, dorm = line.split(',')
student = Student(id, name, classname, phone, address, dorm)
self.students.append(student)
except FileNotFoundError:
pass
def save_data(self):
'将学生信息保存到文件中。'
with open(self.filename, 'w', encoding='utf-8') as f:
for student in self.students:
line = '{},{},{},{},{},{}
'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm)
f.write(line)
def add_student(self):
'录入学生信息。'
id = input('请输入学号:')
name = input('请输入姓名:')
classname = input('请输入班级:')
phone = input('请输入电话:')
address = input('请输入家庭住址:')
dorm = input('请输入宿舍号:')
student = Student(id, name, classname, phone, address, dorm)
self.students.append(student)
self.save_data()
print('添加成功!')
def modify_student(self):
'修改学生信息。'
id = input('请输入要修改信息的学生学号:')
for student in self.students:
if student.id == id:
print('学号 姓名 班级 电话 家庭住址 宿舍号')
print('{} {} {} {} {} {}'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm))
choice = input('请选择要修改的信息(1-班级 2-电话 3-家庭住址 4-宿舍号 0-取消):')
if choice == '1':
classname = input('请输入新的班级:')
student.classname = classname
self.save_data()
print('修改成功!')
elif choice == '2':
phone = input('请输入新的电话:')
student.phone = phone
self.save_data()
print('修改成功!')
elif choice == '3':
address = input('请输入新的家庭住址:')
student.address = address
self.save_data()
print('修改成功!')
elif choice == '4':
dorm = input('请输入新的宿舍号:')
student.dorm = dorm
self.save_data()
print('修改成功!')
elif choice == '0':
print('取消修改!')
else:
print('输入有误!')
return
print('没有找到该学生!')
def delete_student(self):
'删除学生信息。'
id_or_name = input('请输入要删除信息的学生学号或姓名:')
for student in self.students:
if student.id == id_or_name or student.name == id_or_name:
self.students.remove(student)
self.save_data()
print('删除成功!')
return
print('没有找到该学生!')
def search_student(self):
'查找学生信息。'
id_or_name = input('请输入要查找信息的学生学号或姓名:')
for student in self.students:
if student.id == id_or_name or student.name == id_or_name:
print('学号 姓名 班级 电话 家庭住址 宿舍号')
print('{} {} {} {} {} {}'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm))
return
print('没有找到该学生!')
def show_students(self):
'浏览所有学生信息。'
print('学号 姓名 班级 电话 家庭住址 宿舍号')
for student in self.students:
print('{} {} {} {} {} {}'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm))
def start(self):
'启动系统。'
self.load_data()
while True:
print('===== 学生信息管理系统 =====')
print('1. 录入学生信息')
print('2. 修改学生信息')
print('3. 删除学生信息')
print('4. 查找学生信息')
print('5. 浏览所有学生信息')
print('6. 退出系统')
choice = input('请选择功能(1-6):')
if choice == '1':
self.add_student()
elif choice == '2':
self.modify_student()
elif choice == '3':
self.delete_student()
elif choice == '4':
self.search_student()
elif choice == '5':
self.show_students()
elif choice == '6':
confirm = input('确定退出系统吗?(y/n):')
if confirm == 'y':
print('谢谢使用!')
break
else:
print('输入有误!')
if __name__ == '__main__':
manage = Manage()
manage.start()
使用示例
===== 学生信息管理系统 =====
1. 录入学生信息
2. 修改学生信息
3. 删除学生信息
4. 查找学生信息
5. 浏览所有学生信息
6. 退出系统
请选择功能(1-6):5
学号 姓名 班级 电话 家庭住址 宿舍号
202201001 张三 计科2202 1235 湖北省武汉市武设信工院 7栋304
202201002 赵李 软工2201 1233 湖北省武汉市武设信工院 5栋102
===== 学生信息管理系统 =====
1. 录入学生信息
2. 修改学生信息
3. 删除学生信息
4. 查找学生信息
5. 浏览所有学生信息
6. 退出系统
请选择功能(1-6):1
请输入学号:202201003
请输入姓名:王五
请输入班级:软工2202
请输入电话:1234
请输入家庭住址:湖北省武汉市洪山区
请输入宿舍号:6栋302
添加成功!
===== 学生信息管理系统 =====
1. 录入学生信息
2. 修改学生信息
3. 删除学生信息
4. 查找学生信息
5. 浏览所有学生信息
6. 退出系统
请选择功能(1-6):2
请输入要修改信息的学生学号:202201002
学号 姓名 班级 电话 家庭住址 宿舍号
202201002 赵李 软工2201 1233 湖北省武汉市武设信工院 5栋102
请选择要修改的信息(1-班级 2-电话 3-家庭住址 4-宿舍号 0-取消):4
请输入新的宿舍号:5栋103
修改成功!
===== 学生信息管理系统 =====
1. 录入学生信息
2. 修改学生信息
3. 删除学生信息
4. 查找学生信息
5. 浏览所有学生信息
6. 退出系统
请选择功能(1-6):3
请输入要删除信息的学生学号或姓名:王五
删除成功!
===== 学生信息管理系统 =====
1. 录入学生信息
2. 修改学生信息
3. 删除学生信息
4. 查找学生信息
5. 浏览所有学生信息
6. 退出系统
请选择功能(1-6):4
请输入要查找信息的学生学号或姓名:202201001
学号 姓名 班级 电话 家庭住址 宿舍号
202201001 张三 计科2202 1235 湖北省武汉市武设信工院 7栋304
===== 学生信息管理系统 =====
1. 录入学生信息
2. 修改学生信息
3. 删除学生信息
4. 查找学生信息
5. 浏览所有学生信息
6. 退出系统
请选择功能(1-6):6
确定退出系统吗?(y/n):y
谢谢使用!
原文地址: https://www.cveoy.top/t/topic/oyy8 著作权归作者所有。请勿转载和采集!