一、功能展示
1.菜单
![](https://i-blog.csdnimg.cn/blog_migrate/fc1716410d8c2cde0533b4addafafa4e.png)
2. 添加学生
![](https://i-blog.csdnimg.cn/blog_migrate/bc6a0f102eb88394ce615676e44cbc0f.png)
3查询学生
![](https://i-blog.csdnimg.cn/blog_migrate/f9b780e89172791637516ee2c23c2487.png)
4修改学生
![](https://i-blog.csdnimg.cn/blog_migrate/3eff8650ad3b1e91949039340f34a0b0.png)
5删除学生
二、代码展示
# 添加学员(姓名、年龄、联系方式)
print('****************开始添加学员信息!!****************')
name = input('请输入姓名:')
age = int(input('请输入年龄:'))
tel = input('请输入联系方式:')
# 学员信息,并把学员添加到学员列表
def func(**kwargs):
return kwargs
student_information = func(name=name, age=age, tel=tel)
# print(student_information)
# 判断学员是否已经存在,使用异常处理方法
try:
student_list.index(student_information)
except Exception as e:
student_list.append(student_information)
n += 1 # 学员序号
print('****************添加学员信息成功!!****************')
else:
print('学员已经存在!!请勿重复添加,将回到主页菜单页面!!!')
break
# 查询学员(姓名、年龄、联系方式)
print('****************开始查询学员信息!!****************')
tn=input('1:查询所有学员 2:根据姓名关键字查询\n请选择查询项目:')
while not tn in '12':
tn = input('没有该选项,请重新输入(1-2):')
if tn=='1':
# 输出目前的学员
if n == 1:
print(f'目前没有学员!!')
else:
print(f'目前有{n - 1}位学员:')
for x in range(0, n - 1):
print(student_list[x])
a = input('是否继续查询(y/n)?')
while 'yYnN'.find(a) == -1:
a = input('输入错误,请重新输入(y/n):')
if a == 'n' or a == 'N':
print('已经回到学员管理系统主页面!!')
break # 退出目前循环,回到主页面
else:
cn = '2' # 继续查询学员信息
else:
name=input('请输入学员姓名:')
temp=0
for x in range(0,n-1):
if name in student_list[x].get('name'):
print(student_list[x])
temp+=1
if temp==0:
print('该学员不存在!!')
# 修改学员(姓名、年龄、联系方式)
print('****************开始修改学员信息!!****************')
student_templist=[]
print(f'目前有{n-1}位学员,信息如下:')
for x in range(0, n - 1):
student_templist.append(student_list[x])
student_templist[x]['编号']=x+1
print(student_templist[x])
sn=int(input('请输入要修改的学生编号:'))
temp=-1
for x in range(0,n-1):
if student_templist[x].get('编号')==sn:
student_templist[x].pop('编号')
tempstudent=student_templist[x].copy()
temp=x
if temp==-1:
print('该学员不存在!!')
a = input('是否继续修改(y/n)?')
while 'yYnN'.find(a) == -1:
a = input('输入错误,请重新输入(y/n):')
if a == 'n' or a == 'N':
print('已经回到学员管理系统主页面!!')
break # 退出目前循环,回到主页面
else:
cn = '4' # 继续删除学员信息
else:
str = input('请输入要修改的部分(name、age、tel):')
str1 = input('请输入修改后的内容:')
print(f'你要修改的是该条学员的信息:{tempstudent}')
a = input('确定修改吗(y/n)?')
while 'yYnN'.find(a) == -1:
a = input('输入错误,请重新输入(y/n):')
if a == 'n' or a == 'N':
print('已经取消修改!!')
break # 退出目前循环,回到主页面
else:
student_list[temp][str]=str1
print('****************学员信息修改成功!!*****************')
# 删除学员
print('****************开始删除学员信息!!****************')
dn = input('1:删除所有学员 2:根据索引删除学员\n请选择删除项目:')
while not dn in '12':
dn = input('没有该选项,请重新输入(1-2):')
if dn=='1':
student_list.clear() # 删除所有学生
print('****************成功删除所有学员!!****************')
n=1
break
else:
student_templist = []
print(f'目前有{n - 1}位学员,信息如下:')
for x in range(0, n - 1):
student_templist.append(student_list[x])
student_templist[x]['编号'] = x + 1
print(student_templist[x])
sn = int(input('请输入要删除的学生编号:'))
temp = -1
for x in range(0, n - 1):
if student_templist[x].get('编号') == sn:
student_templist[x].pop('编号')
tempstudent = student_templist[x].copy()
temp = x
if temp==-1:
print('该学员不存在!!')
a = input('是否继续删除(y/n)?')
while 'yYnN'.find(a) == -1:
a = input('输入错误,请重新输入(y/n):')
if a == 'n' or a == 'N':
print('已经回到学员管理系统主页面!!')
break # 退出目前循环,回到主页面
else:
cn = '4' # 继续删除学员信息
else:
print(f'你要删除的是该学员吗:{tempstudent}')
a = input('确定删除吗(y/n)?')
while 'yYnN'.find(a) == -1:
a = input('输入错误,请重新输入(y/n):')
if a == 'n' or a == 'N':
print('已经取消删除!!')
break # 退出目前循环,回到主页面
else:
student_list.pop(temp)
print('****************成功删除该学员!!****************')