一,设计一个完整的主页面
编辑一个完整的主页面
import random
def menuInfo():
print('''
**********************
学生信息管理系统
1.添加信息
2.遍历信息
3.删除信息
4.查找信息
5.修改信息
6.随机加分
7.系统还原
8.显示菜单
0.退出
**********************
''')
二,添加学生的信息
1,创建空字典,用来存储单个学生信息
def addInfo():
info = {}
name = input('请输入学生姓名:')
id = input('请输入学生学号:')
2,设置一个标签,用来表示是否查找到相应的学号,初始值为0
lable = 0
for i in x_list:
if id == i['学号']:
print('该学号已存在,不能重复添加')
lable = 1#找到了
break
3,用info设置包括学号,姓名,成绩的信息
if lable == 0:
# print('您查找的学号不存在')
#因为没有重复的学号,所以,这里做“添加信息”这件事情
info['姓名'] = name
info['学号'] = id
info['成绩'] = 50
x_list.append(info)
三,遍历信息
设置学生信息表信息
def showInfo():
print('学生信息如下表:')
print('姓名\t\t学号\t\t成绩')
for i in x_list:
print(f"{i['姓名']}\t\t{i['学号']}\t\t{i['成绩']}")
四,查找信息
设置一个标签,用来表示是否查找到相应的学号,初始值为0
def lookupInfo():
lable = 0
stuID = input('请输入要查找的学号:')
for i in x_list:
if stuID == i['学号']:
print('您查找的学生信息是:',i)
lable = 1#找到了
break
if lable == 0:
print('您查找的学号不存在')
五,修改信息
定义一个变量,作为是否查找到学生的标记
def changeInfo():
lable = 0
stuID=input("请输入要修改信息的学生学号:")
for i in x_list:
if i['学号']==stuID:
lable = 1
print('您查找的学生信息是:',i)
newName = input('请输入新的姓名:')
i['姓名'] = newName
newID = input('请输入新的学号:')
i['学号'] = newID
print('修改成功')
break
if lable == 0:
print('你要修改的学生信息不存在')
六,随机加分
设置一个标签,用来表示是否查找到相应的学号,初始值为0
def addScore():
print('------彩蛋,随机加分------')
print('目前存在的学号有:')
for num in x_list:
print(num['学号'],end='\t')
lable = 0
stuID = input('\n请输入要加分的学号:')
for i in x_list:
if stuID == i['学号']:
lable = 1#找到了
#加分
ran = random.randint(1, 5)
i['成绩'] = i['成绩']+ran
break
if lable == 0:
print('您加分的学号不存在')
七,系统还原
其中有两个方案
方案一
全局变量
def initialization():
sire=input('请确定是否恢复原来的设置:按一确定,退出请按其他:')
if sire=='1':
global x_list
x_list = [{'姓名': '张三', '学号': '01', '成绩': 50}, {'姓名': '李四', '学号': '02', '成绩': 50}]
方案二
def initialization():
sire=input('请确定是否恢复原来的设置:按一确定,退出请按其他:')
if sire=='1':
x_list.clear()
x_list.append({'姓名': '张三', '学号': '01', '成绩': 50})
x_list.append({'姓名': '李四', '学号': '02', '成绩': 50})
八,删除信息
设置一个标签,用来表示是否查找到相应的学号,初始值为0
def delInfo():
lable = 0
stuID = input('请输入要删除的学号:')
for i in x_list:
if stuID == i['学号']:
lable = 1#找到了
x_list.remove(i)#删除列表元素
print('删除成功')
break
if lable == 0:
print('您要删除的学号不存在')
九,主函数
其中主函数里面包括有显示菜单,调用菜单函数
def mainInfo():
menuInfo()
while True:
choice = input('请输入你的选择(按0-8,显示菜单请按8):')
if choice =='1':
print("添加信息")
addInfo()
elif choice =='2':
showInfo()
elif choice == '3':
delInfo()
elif choice == '4':
lookupInfo()
elif choice == '5':
changeInfo()
elif choice == '6':
addScore()
elif choice == '7':
pass
initialization()
elif choice == '8'
menuInfo()
elif choice =='0':
break
else:
print("输入错误,请重新输入")
十,系统还原
创建列表 ,用来存储所有学生信息
x_list = [{'姓名': '张三', '学号': '01', '成绩': 50},{'姓名': '李四', '学号': '02', '成绩': 50}]#创建列表 ,用来存储所有学生信息
mainInfo()
print(x_list)
运行结果如下:
注意:以上的功能全部为可用的,如果想用其它功能可以选择1~8的功能选择修改或者其它等等。