1)使用列表类型存储学生信息,列表元素是三元组(stuName,stuSex,stuTel);
2)自定义函数getStu()insertStu(),deleteStu(),editStu(),displayStu(),quit()分别实现系统的获取学生信息、添加、删除、修改、显示及退出系统功能;
3)自定义函数Menu()显示菜单,定义main()函数用于调用替他函数完成系统的功能,使用全局变量用于辅助函数完成系统的功能;
4)使用异常处理,用于增强系统的健壮性。
def Menu():
#此函数用于显示菜单
print("="*40)
print("\t学生信息管理系统v1.0")
print("\t1.添加学生信息")
print("\t2.删除学生信息")
print("\t3.修改学生信息")
print("\t4.查询学生信息")
print("\t5.遍历学生信息")
print("\t0.退出程序")
print("="*40)
def getStu():
#此函数用于获取学生信息
global stuName #声明全局变量,下同
global stuSex
global stuTel
stuName=input("请输入学生姓名:")
stuSex=input("请输入学生性别:")
while True:
try:
stuTel=int(input("请输入学生手机号码:"))
except ValueError:
print("*手机号码须为整数,请重新输入*")
else:
print("*手机号码输入正确*")
break
return [stuName,stuSex,stuTel]
def insertStu():
#此函数用于添加学生信息
Stu=getStu()
addstu={}
addstu['name']=Stu[0]
addstu['sex']=Stu[1]
addstu['tel']=Stu[2]
Students.append(addstu)
def deleteStu():
#此函数用于删除学生信息
while True:
try:
if sn>0:
n=int(input("请输入需要删除学生的序号:"))
del Students[sn-1]
print("删除学生信息成功")
break
else:
print("*输入错误,请重新输入大于零的数*")
except ValueError:
print("*序号须为整数,请重新输入*")
def editStu():
#此函数用于修改学生信息
global sn
while True:
try:
sn=int(input("请输入需要修改信息的学生序号(sn>=1):"))
if sn>0:
getStu()
Students[sn-1]['name']=stuName
Students[sn-1]['sex']=stuSex
Students[sn-1]['tel']=stuTel
break
else:
print("*输入错误,请重新输入大于零的数*")
except ValueError:
print("*序号须为整数,请重新输入*")
print("修改学生信息成功")
def seekstu():
#此函数用于查询学生信息,并输出
global n
while True:
try:
sn=int(input("请输入需要修改信息的学生序号(sn>=1):"))
if sn>0:
print("\t序号\t\t姓名\t\t性别\t\t手机号码")
print("\t{}\t\t{}\t\t{}\t\t{}".format(sn,Students[sn-1]['name'],Students[sn-1]['sex'],Students[sn-1]['tel']))
break
else:
print("*输入错误,请重新输入*")
except ValueError:
print("*序号须为整数,请重新输入*")
def displayStu():
#此函数用于显示学生信息
print("\t序号\t\t姓名\t\t性别\t\t手机号码")
i=1
for outstu in Students:
print("\t{}\t\t{}\t\t{}\t\t{}".format(i,outstu['name'],outstu['sex'],outstu['tel']))
i+=1
def quitsystem():
#此函数用于退出系统
print("谢谢使用本系统,再见")
def main():
#此函数用于调用替他函数完成系统的功能
while True:
Menu()
try:
choice=int(input("请输入你的选择(功能序号):"))
if choice==1:
insertStu()
elif choice==2:
deleteStu()
elif choice==3:
editStu()
elif choice==4:
seekstu()
elif choice==5:
displayStu()
elif choice==0:
quitsystem()
break
else:
print("*输入错误,请输入0—5之间的整数*")
except ValueError:
print("*请输入对应功能的序号(整数)*")
#全局变量
Students=[]
stuName=""
stuSex=""
stuTel=""
sn=0 #初始化序号为零
main()