def show_menu():
‘‘‘显示菜单‘‘‘
print(‘欢迎使用学生管理系统‘)
print(‘\t 1.增加学生信息‘)
print(‘\t 2.删除学生信息‘)
print(‘\t 3.修改学生信息‘)
print(‘\t 4.展示所有学生信息‘)
print(‘\t 5.根据名字查询‘)
print(‘\t 6.统计平均年龄‘)
print(‘\t 7.退出系统***********‘)
def add_stu():
‘‘‘返回的是所有学生列表!‘‘‘
print(‘\t\t*增加学生信息‘)
# 循环增加
flag = ‘y‘ #循环标记
studetns =[] # 多个学生
while flag==‘y‘:
id = input(‘请输入编号:‘)
name = input(‘请输入名字:‘)
sex = input(‘请输入性别:‘)
age = input(‘请输入年龄:‘)
# 创建一个学生字典!
stu = {‘id‘:id,‘name‘:name,‘sex‘:sex,‘age‘:age}
studetns.append(stu) #放到列表!
flag = input(‘是否继续(y/n)??
print(‘学生添加完成!!!‘)
return studetns
def del_stu(students):
print(‘\t**************删除学生信息*************‘)
print(students)
name = input(‘请输入删除的名字:‘)
# 根据名字找位置
delnum=0
for i,stu in enumerate(students): #enumerate得到索引值,得到位置
if stu[‘name‘]==name:
delnum = i #要删除的位置
break
students.pop(delnum) #根据位置删除
print(‘删除后的数据:‘)
print(students)
def update_stu(students):
print(‘修改‘)
id = input(‘请输入编号:‘)
name = input(‘请输入名字:‘)
sex = input(‘请输入性别:‘)
age = input(‘请输入年龄:‘)
# 创建一个学生字典!
stu = {‘id‘: id, ‘name‘: name, ‘sex‘: sex, ‘age‘: age}
return students.append(stu)
def show_list(students):
print(‘展示所有学生信息!‘)
# 循环打印所有学生
# [{},{},....] for i in students : i是每个值!
for stu in students:
print(stu)
for i,v in enumerate(students):
print(f‘第{i+1}个,值:{v}‘)
def search_name(students):
print(‘根据名字查询‘)
# print(‘\t**************删除学生信息*************‘)
# print(students)
name = input(‘请输入查找的学生名字:‘)
# 根据名字找位置,以enumerate函数得到索引,根据索引得到位置
delnum = 0
for i, stu in enumerate(students):
if stu[‘name‘] == name:
delnum = i #得到位置
break
#students.pop(delnum)#删除
print(students[delnum]) #根据位置查找
def avg_age(students):
print(‘统计平均年龄‘)
print(‘\t**************平均年龄*************‘)
sum = 0 #总年龄
for i, stu in enumerate(students):
sum += stu[‘age‘]
print(f‘平均年龄:{sum/len(students)}‘)
if name == ‘main‘:
students = [] # 总学生列表!
while True:
show_menu()
num = int(input(‘请输入选择的菜单(1-7)??)
if num7:
print(‘感谢使用,退出程序!‘)
flag = input(‘确定要退出么(y退出/n不退出!):?‘)
if flag‘y‘:
break #循环结束
else:
continue # 中断本次
elif num 1:
students= add_stu() #增加
print(f‘增加完了,所有的学生总数{len(students)}‘)
continue
elif num2:
del_stu(students)
elif num3:
update_stu(students)
elif num4:
show_list(students)
elif num5:
search_name(students)
elif num6:
avg_age(students)
else:
print(‘输入有误,请重新输入!‘)
原文:https://www.cnblogs.com/wml3030/p/13896380.html