1.这是整个架构思想:
def main():
while True:
exp1=start()
if exp1==1:
find()
elif exp1==2:
find_someone()
elif exp1==3:
set()
elif exp1==4:
add()
elif exp1==5:
delete()
elif exp1==6:
break
else:
raise ValueError('请输入正确的数字')
2.这是我们的主界面:
def start():
print('---------学生信息管理系统----------')
print('1--------查看学生信息--------------')
print('2--------查看指定的学生信息---------')
print('3--------修改学生信息--------------')
print('4--------添加学生信息--------------')
print('5--------删除学生信息--------------')
print('6--------退出学生信息系统-----------')
exp=int(input('请选择你要的功能,1-5'))
return exp
3.获取所有信息函数:
def find():
while True:
if len(data1)==0:
print('------当前没有任何学生信息哦--------')
else:
for item in data1:
print(item)
time.sleep(1)
exp=input('是继续查看所有学生信息吗,y/n')
if exp=='y':
continue
elif exp=='n':
break
else:
raise ValueError('请输入合法的数据')
4.获取某些特定学生信息的函数:
def find_someone():
while True:
exp=input('请选择你想查的学生姓名')
for item in data1:
if item['姓名']==exp:
print(item)
exp=1
#因为我们在添加学生信息时已经判断重复的情况
if exp!=1:
print('没有该学生')
exp1=input('是否继续查找,y/n')
if exp1=='y':
continue
elif exp1=='n':
break
else:
raise ValueError('请输入合法的数据')
5.修改学生信息的函数:
def set():
while True:
name=input('请输入你想修改学生的姓名')
for item in data1:
if item['姓名']==name:
name1=input('请修改该学生姓名')
item['姓名']=name1
age=input('请修改该学生年龄')
item['年龄']=age
heghit=input('请修改学生身高')
item['身高']=heghit
else:
print('没有该学生,重新输入')
exp=input('是否继续,y/n')
if exp=='y':
continue
elif exp=='n':
break
else:
raise ValueError('请输入合法的数据')
6.添加学生信息的函数:
def add():
data2=[]
while True:
for item in data1:
data2.append(item['姓名'])
name = input('请输入学生的姓名')
while name in data2:
name=input('该学生已经存在,请重新输入')
if name not in data2:
break
else:
continue
age = input('请输入学生的年龄')
heghit = input('请输入学生的身高')
data = {'姓名': name, '年龄': age, '身高': heghit}
data1.append(data)
exp = input('是否继续添加数据,y/n')
if exp == 'y':
continue
elif exp == 'n':
break
else:
raise ValueError('请输入合法的数据')
7.删除学生信息的函数:
def delete():
while True:
exp=input('请选择你想删的学生姓名')
for item in data1:
if item['年龄']==exp:
data1.remove(item)
print('删除成功')
exp=input('是否继续删除,y/n')
if exp=='y':
continue
elif exp=='n':
break
else:
raise ValueError('请输入合法的数据')
8.程序运行:
if __name__ == '__main__':
main()
|