student_list = []#创建学生信息存储的列表
def bdcz(student_list_para,id_class_para):#创建学生学号遍历匹配函数(这里要使用“学生学号”,“学生列表”)
panduan = 0#定义判断变量,如果遍历匹配出现就返回变量1,以提供下一步操作
for i in range(len(student_list_para)):#列表二维索引值遍历
if student_list_para[i]['学号:'] == id_class_para:#遍历匹配
panduan = 1#匹配成功变量为1
return panduan#返回值
def chuangjian(xuehao_para,name_para,class_para):#创建列表,这里形参需要学生需要录入的信息(学号,姓名,班级)
sutdent_zidian_para = {#以字典形式保存
'学号:':xuehao_para,
'姓名:':name_para,
'班级:':class_para
}
return sutdent_zidian_para#这里需要将本次创建的信息返回为一个变量,然后通过变量添加进入学生信息列表
def del_student_list(student_list_para,del_student_list_para):#删除信息:这里形参需要用到(学生列表,需要删除的学生学号)
panduan_1 = 0#创建判断变量
for i in range(len(student_list_para)):#遍历索引值
if student_list_para[i]['学号:'] == del_student_list_para:#使用索引值,进行二维匹配
del student_list_para[i]#匹配成功,删除该生信息
print('该生信息已经删除!')#提示删除成功!
panduan_1 = 1#成功匹配学号,修改变量
if panduan_1 == 0:#变量没有修改(没有匹配成功!),所以判断为没有该学号!
print('删除失败,没有匹配到该生信息!')
while True:#死循环,使程序一直处于运行状态,直到用户需要停止为止
#开始进行提示操作(操作菜单):
print('''学生管理系统(函数版)
1.创建信息
2.查询信息
3.查询所有信息
4.删除信息
5.修改信息
6.退出程序''')
xuanze = int(input('操作>'))#用户选择操作
if xuanze == 1:#用户选择操作符合创建信息
id_class = int(input('学号》'))#输入创建学号
pd = bdcz(student_list,id_class)#开始遍历匹配学号,学号不重复返回0 学号重复返回1
if pd == 0:#返回值不变为0
name = input('姓名》')#开始创建信息
class_shi = input('班级》')
lianjie = chuangjian(id_class,name,class_shi)#创建信息导入函数中,再定定义到变量中
student_list.append(lianjie)#在学生信息列表中,创建信息
print('创建成功!')#返回创建成功提示
else:#返回值不为0,即学号重复导致判断变量更改,即判断学号重复!
print('学号重复!')#提醒学号重复,需要重新创建
elif xuanze == 2:#用户选择(这个地方,个人觉得直接打出来比较好)
chaxun = int(input('输入查询学号>'))#输入需要查询的学号
panduan = 0#判断变量
for i in range(len(student_list)):#开始遍历索引值
if student_list[i]['学号:'] == chaxun:#开始匹配
print('该生信息:',student_list[i])#将匹配值打印
panduan = 1#匹配成功,更改变量值
if panduan == 0:#没有匹配成功,变量没有被改变
print('没有该生信息!')#提醒用户没有该生的信息
elif xuanze == 3:#用户选择(这也没有写函数,觉得直接写出来比较快捷)
print('请登入教师账号:')#为了保护学生信息,提供了以一个教师登入保护
tq = int(input('账号>'))
if tq == 8417:
mm = int(input('密码>'))
if mm == 123456:
print('学生信息:')
for i in student_list:
print(i)
else:
print('密码错误!')
else:
print('账户不存在!')
elif xuanze == 4:#用户选择
xuehao_del = int(input('输入删除学号>'))#输入需要删除学生信息学号
del_student_list(student_list,xuehao_del)#将student_list学生信息列表和删除学号导入进行函数内的运行
elif xuanze == 5:#直接写的
xuehao_1 = int(input('输入修改学号>'))#输入需要修改的学号
panduan = 0
for i in range(len(student_list)):#开始遍历索引值
if student_list[i]['学号:'] == xuehao_1:#开始匹配
panduan = 1#匹配成功变量更改
#并且进行后续操作,出现选择修改页面
print('''请选择修改信息(学号不可修改!):#
1.姓名
2.班级
3.退出修改''')
xuanze_2 = int(input('选择修改项>'))#开始选择修改的信息
if xuanze_2 == 1:
name_1 = input('请输入姓名>')
student_list[i]['姓名:'] = name_1#修改信息(下面皆是重复操作)
elif xuanze_2 == 2:
class_xiugai = input('请输入班级>')
student_list[i]['班级:'] = class_xiugai
elif xuanze_2 == 3:
print('修改程序已经退出!')
break#修改程序退出
else:
print('无法识别,请重新输入!')#超出选项值,无法识别操作
if panduan == 0:#变量没有更改,判断没有学号。
print('学号不存在!')
elif xuanze == 6:#用户选择判断
print('程序结束!')#给用户提示,程序结束!
break#程序结束
else:#操作选择超出,选择值。无法执行,即重新操作
print('错误操作,请重新选择!')
函数版的初级学生管理系统
最新推荐文章于 2024-10-01 05:04:32 发布
这是一个使用Python实现的学生管理系统,包括创建、查询、显示所有信息、删除和修改学生信息的功能。系统通过函数进行操作,确保数据的安全性和一致性。用户可以进行学号验证避免重复,查询指定学号信息,删除特定学号学生,以及修改学生的姓名和班级信息。系统还设有教师身份验证以保护学生数据。
摘要由CSDN通过智能技术生成