基于Python实现简易学生信息管理系统
系统简介
本系统是基于Python语言实现的简易学生信息管理系统。它可以方便地增加、删除、修改和查询学生信息,同时支持将信息存储到文件或者从文件中读取信息。系统主要包含以下功能模块:
- 添加学生信息
- 删除学生信息
- 修改学生信息
- 查询学生信息
- 展示所有学生信息
- 保存学生信息到文件
- 从文件中读取学生信息
系统实现
数据结构设计
系统中的主要数据结构是学生信息,每个学生信息包含以下字段:
- 学生姓名
- 学生年龄
- 学生性别
- 学生籍贯
- 学生专业
在实现过程中,我们使用了Python中的字典(dict)作为学生信息的数据类型,其中key值分别为上述字段名,value值为具体的信息。
功能模块实现
在实现上述功能模块之前,我们需要先初始化一个学生信息列表,存放所有的学生信息。
students = []
添加学生信息
在添加学生信息的代码实现过程中,我们需要使用Python中的input函数获取用户输入的学生信息,并将其添加到学生信息列表中。
def add_student(students):
name = input("请输入学生姓名:")
age = input("请输入学生年龄:")
sex = input("请输入学生性别:")
place = input("请输入学生籍贯:")
major = input("请输入学生专业:")
student = {
'name': name,
'age': age,
'sex': sex,
'place': place,
'major': major
}
students.append(student)
print("添加成功!")
删除学生信息
在删除学生信息的代码实现过程中,我们需要先查询出要删除的学生信息,并将其从学生信息列表中删除。
def del_student(students):
name = input("请输入要删除的学生姓名:")
for student in students:
if student['name'] == name:
students.remove(student)
print("删除成功!")
return
print("未找到该学生!")
修改学生信息
在修改学生信息的代码实现过程中,我们需要先查询出要修改的学生信息,并将其修改为新的信息。
def modify_student(students):
name = input("请输入要修改信息的学生姓名:")
for student in students:
if student['name'] == name:
student['age'] = input("请输入学生新年龄:")
student['sex'] = input("请输入学生新性别:")
student['place'] = input("请输入学生新籍贯:")
student['major'] = input("请输入学生新专业:")
print("修改成功!")
return
print("未找到该学生!")
查询学生信息
在查询学生信息的代码实现过程中,我们需要先输入要查询的学生姓名,并在学生信息列表中查找该学生信息。
def query_student(students):
name = input("请输入要查询的学生姓名:")
for student in students:
if student['name'] == name:
print("学生姓名:{},学生年龄:{},学生性别:{},学生籍贯:{},学生专业:{}".format(student['name'], student['age'], student['sex'], student['place'], student['major']))
return
print("未找到该学生!")
展示所有学生信息
在展示所有学生信息的代码实现过程中,我们需要遍历学生信息列表,并输出每个学生的信息。
def show_all_students(students):
for student in students:
print("学生姓名:{},学生年龄:{},学生性别:{},学生籍贯:{},学生专业:{}".format(student['name'], student['age'], student['sex'], student['place'], student['major']))
保存学生信息到文件
在保存学生信息到文件的代码实现过程中,我们需要使用Python中的pickle模块将学生信息列表序列化到文件中。
import pickle
def save_to_file(students):
with open('students.data', 'wb') as file:
pickle.dump(students, file)
print("保存成功!")
从文件中读取学生信息
在从文件中读取学生信息的代码实现过程中,我们需要使用Python中的pickle模块将序列化文件中的学生信息列表反序列化到内存中。
import pickle
def read_from_file():
try:
with open('students.data', 'rb') as file:
students = pickle.load(file)
print("读取成功!")
return students
except FileNotFoundError:
print("未找到学生信息文件!")
功能模块集成
将以上所有功能模块集成到一个主函数中:
def main():
students = read_from_file()
while True:
print("==============================")
print("欢迎使用学生信息管理系统!")
print("1、添加学生信息")
print("2、删除学生信息")
print("3、修改学生信息")
print("4、查询学生信息")
print("5、展示所有学生信息")
print("6、保存学生信息到文件")
print("7、从文件中读取学生信息")
print("0、退出系统")
print("==============================")
choice = input("请输入您的选择:")
if choice == '1':
add_student(students)
elif choice == '2':
del_student(students)
elif choice == '3':
modify_student(students)
elif choice == '4':
query_student(students)
elif choice == '5':
show_all_students(students)
elif choice == '6':
save_to_file(students)
elif choice == '7':
students = read_from_file()
elif choice == '0':
print("感谢使用!")
break
else:
print("输入错误,请重新输入!")
示例说明
示例1:添加学生信息
用户输入如下信息,添加一个学生信息:
请输入学生姓名:Tom
请输入学生年龄:20
请输入学生性别:男
请输入学生籍贯:北京
请输入学生专业:计算机科学与技术
添加成功!
示例2:查询学生信息
用户输入要查询的学生姓名为Tom,系统返回如下查询结果:
请输入要查询的学生姓名:Tom
学生姓名:Tom,学生年龄:20,学生性别:男,学生籍贯:北京,学生专业:计算机科学与技术
在以上示例中,我们展示了添加学生信息和查询学生信息两个功能模块的使用方法。用户可以根据上述示例,进一步了解系统的所有功能模块。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于Python实现简易学生信息管理系统 - Python技术站