功能概述
需求:进入系统显示系统功能界面,功能如下:
1.添加学员信息 => add_student()
2.删除学员信息 => del_student()
3.修改学员信息 => edit_student()
4.查询学员信息 => …
5.遍历所有学员信息
6.退出系统
搭建系统框架
students=[] # todo 定义全局列表用于储存所有学员信息
def menu(): #菜单 定义函数menu,用于显示系统功能
print('-'*20)
print('学生管理系统')
print('1.添加学生的信息')
print('2.删除学生的信息')
print('3.修改学生的信息')
print('4.查询学生的信息')
print('5.遍历所有学生的信息')
print('6.退出系统')
print('-' * 20)
while True: # todo 定义死循环,其作用是如果输入错误,返回输入界面,直至输入正确为止.
menu()
user_num = int(input("请输入您需要的功能序号:"))
if user_num==1:
print('添加学生信息')
add_student() #添加函数
elif user_num==2:
print('删除学生信息')
del_student() #添加函数
elif user_num==3:
print('修改学生信息')
change_student() #添加函数
elif user_num==4:
print('查询学生信息')
check_student() #添加函数
elif user_num==5:
print('遍历所有学生信息')
all_students() #添加函数
elif user_num == 6:
print('退出系统')
flog=input('是否要退出系统?确认请输入[yes]:')
if flog=='yes':
break # todo 跳出循环体,不让其继续向下循环
else:
print('输入错误')
添加功能
需求分析: 接收用户输入学员信息,并保存
判断是否添加学员信息
如果学员姓名已经存在,则报错提示
如果学员姓名不存在,则准备空字典,将用户输入的数据追加到字典
将用户字典数据追加到全局学员信息列表,最后,if条件成立的位置调用该函数
def add_student(): #定义添加函数
name = input('请输入要添加的学生姓名:')
age = input('请输入要添加的学生年龄:')
phone = input('请输入要添加的学生号码:')
student={}
student['name'] = name
student['age'] = age
student['phone'] = phone
global students
students.append(student)
print(f'学生{name}信息添加成功')
删除功能
需求分析按用户输入的学员姓名进行删除
用户输入目标学员姓名
检查这个学员是否存在
如果存在,则列表删除这个数据
如果不存在,则提示“该用户不存在”
对应的if条件成立的位置调用该函数
def del_student(): #定义删除函数
name=input('请输入要删除的学生姓名:')
global students
for i in students:
if i['name'] == name:
students.remove(i)
print(f'学生{name}删除成功')
break # todo 跳出循环体,不让其继续向下循环
else:
print('没有找到该学生信息')
修改功能
需求分析
用户输入目标学员姓名
检查这个学员是否存在
如果存在,则修改这位学员的信息,例如手机号
如果不存在,则报错
对应的if条件成立的位置调用该函数
def change_student(): #定义修改函数
name=input('请输入要修改的学生信息:')
global students
for i in students:
if i['name'] == name:
i['name']=input('请输入修改后的姓名:')
i['age']=input('请输入修改后的年龄:')
i['phone']=input('请输入修改后的号码')
print(f'学生{name}信息修改成功')
break # todo 跳出循环体,不让其继续向下循环
else:
print('没有找到该学生信息')
查询功能
需求分析
用户输入目标学员姓名
检查学员是否存在
如果存在,则显示这个学员的信息
如果不存在,则报错提示
对应的if条件成立的位置调用该函数
def check_student(): #定义修改函数
name=input('请输入要查询的学生姓名:')
global students
for i in students:
if i['name'] == name:
print(i)
break # todo 跳出循环体,不让其继续向下循环
else:
print('没有查询到该学生信息')
遍历内容
def all_students(): #定义宣告函数
for i in students:
print(f"姓名:{i['name']},年龄:{i['age']},号码:{i['phone']}")
退出系统
elif user_num == 6:
print('退出系统')
flog=input('是否要退出系统?确认请输入[yes]:')
if flog=='yes':
break # todo 跳出循环体,不让其继续向下循环
整体代码
students=[] # todo 定义全局列表用于储存所有学员信息
def menu(): #菜单
print('-'*20)
print('学生管理系统')
print('1.添加学生的信息')
print('2.删除学生的信息')
print('3.修改学生的信息')
print('4.查询学生的信息')
print('5.遍历所有学生的信息')
print('6.退出系统')
print('-' * 20)
def add_student(): #定义添加函数
name = input('请输入要添加的学生姓名:')
age = input('请输入要添加的学生年龄:')
phone = input('请输入要添加的学生号码:')
student={}
student['name'] = name
student['age'] = age
student['phone'] = phone
global students
students.append(student)
print(f'学生{name}信息添加成功')
def del_student(): #定义删除函数
name=input('请输入要删除的学生姓名:')
global students
for i in students:
if i['name'] == name:
students.remove(i)
print(f'学生{name}删除成功')
break # todo 跳出循环体,不让其继续向下循环
else:
print('没有找到该学生信息')
def change_student(): #定义修改函数
name=input('请输入要修改的学生信息:')
global students
for i in students:
if i['name'] == name:
i['name']=input('请输入修改后的姓名:')
i['age']=input('请输入修改后的年龄:')
i['phone']=input('请输入修改后的号码')
print(f'学生{name}信息修改成功')
break # todo 跳出循环体,不让其继续向下循环
else:
print('没有找到该学生信息')
def check_student(): #定义修改函数
name=input('请输入要查询的学生姓名:')
global students
for i in students:
if i['name'] == name:
print(i)
break # todo 跳出循环体,不让其继续向下循环
else:
print('没有查询到该学生信息')
def all_students(): #定义宣告函数
for i in students:
print(f"姓名:{i['name']},年龄:{i['age']},号码:{i['phone']}")
while True: # todo 定义死循环,其作用是如果输入错误,返回输入界面,直至输入正确为止.
menu()
user_num = int(input("请输入您需要的功能序号:"))
if user_num==1:
print('添加学生信息')
add_student() #添加函数
elif user_num==2:
print('删除学生信息')
del_student() #添加函数
elif user_num==3:
print('修改学生信息')
change_student() #添加函数
elif user_num==4:
print('查询学生信息')
check_student() #添加函数
elif user_num==5:
print('遍历所有学生信息')
all_students() #添加函数
elif user_num == 6:
print('退出系统')
flog=input('是否要退出系统?确认请输入[yes]:')
if flog=='yes':
break # todo 跳出循环体,不让其继续向下循环
else:
print('输入错误')