一、步骤分析
- 显示功能界面
- 用户输入功能序号
- 根据用户输入的功能序号,执行不同的功能(函数)
- 定义函数
- 调用函数
二、显示功能界面
- 进入程序,在展示功能选择页面
- 用户输入序号,选择功能
- 用户选择系统功能的代码需要循环使用,直到用户主动退出系统。
三、定义不同功能的函数
- 所有功能函数都是操作学员信息,所有存储学员信息的数据类型应该是一个全局变量,数据类型为列表。
list_data = []
(一)主函数的调用
1、定义一个主函数
def main():
2、添加程序入口
if __name__ == '__main__': main()
3、补充主函数
# 主函数 def main(): a = True while a: print("========欢迎进入学生管理系统,请选择你要实现的功能========") print("\t\t\t********1、添加学员信息********") print("\t\t\t********2、删除学员信息********") print("\t\t\t********3、修改学员信息********") print("\t\t\t********4、查找学员信息********") print("\t\t\t********5、退出学员信息********") num = int(input("请选择您需要的功能:")) if num == 1: add_data() elif num ==2: del_data() elif num ==3: rev_data() elif num ==4: check_data() elif num ==5: print("欢迎下次使用学员管理系统") a = False else: print("请输入正确的功能序号")
(二)添加学员信息
1、需求有三
(1)接收用户输入学员信息,并保存
e = {} b = int(input("请输入您想添加的学员学号:")) e["id"]=b c = input("请输入您想添加的学员姓名:") e["name"]=c d = input("请输入您想添加的学员电话:") e["tel"]=d list_data.append(e)
(2)判断是否添加学员信息
---如果学员姓名已经存在,则输出提示,并重新添加
---如果学员姓名不存在,则准备空字典,将用户输入的数据追加到字典,再列表追加字典数据
c = input("请输入您想添加的学员姓名:") for data in list_data: if c == data["name"]: f = int(input("学员姓名已存在!是否重新添加(1、是 2、否)")) if f == 1: c = input("请输入您想添加的学员姓名:") else: print(list_data) return
(3)对应的if条件成立的位置调用该函数
# 主函数 def main(): a = True while a: print("========欢迎进入学生管理系统,请选择你要实现的功能========") print("\t\t\t********1、添加学员信息********") print("\t\t\t********2、删除学员信息********") print("\t\t\t********3、修改学员信息********") print("\t\t\t********4、查找学员信息********") print("\t\t\t********5、退出学员信息********") num = int(input("请选择您需要的功能:")) if num == 1: add_data()
2、添加学员信息代码展示
def add_data(): a = True while a: global list_data e = {} b = int(input("请输入您想添加的学员学号:")) e["id"]=b c = input("请输入您想添加的学员姓名:") for data in list_data: if c == data["name"]: f = int(input("学员姓名已存在!是否重新添加(1、是 2、否)")) if f == 1: c = input("请输入您想添加的学员姓名:") else: print(list_data) return e["name"]=c d = input("请输入您想添加的学员电话:") e["tel"]=d list_data.append(e) xuanze = int(input("学员信息添加完成,(1、继续添加学员信息 2、退出添加,返回学员系统):")) if xuanze == 2: print(list_data) a = False if xuanze == 1: pass else: print("请输入正确的功能数字")
(三)删除学员信息
1、按用户输入的学员学号进行删除
- 用户输入目标学员学号
k = int(input("请输入您所要删除的学员的id:")) global list_data
- 检查这个学员是否存在
- 如果存在,则列表删除这个数据
for data in list_data: if k == data["id"]: print(data["name"],"学员信息删除成功。") list_data.remove(data) break
- 如果不存在,输出不存在,并重新输入
else: print("您所输入的学员id不存在。") b = int(input("请选择以下操作(1、继续删除 2、退出删除,返回学院系统界面)"))
2、删除学员信息代码展示
def del_data(): a = True while a: k = int(input("请输入您所要删除的学员的id:")) global list_data for data in list_data: if k == data["id"]: print(data["name"],"学员信息删除成功。") list_data.remove(data) break else: print("您所输入的学员id不存在。") b = int(input("请选择以下操作(1、继续删除 2、退出删除,返回学院系统界面)")) if b == 2: print(list_data) a = False
(四)修改学员信息
1、用户输入目标学员学号
global list_data num = int(input("请输入您所要修改的学员id:"))
- 检查这个学员是否存在
- 如果存在,显示此学员信息,并供用户输入新的信息
for data in list_data: if num == data["id"]: data["id"]=int(input("修改后的id为:")) data["name"]=input("修改名字为:") print("学员信息修改成功!") break
- 如果不存在,则报错,并重新输入
else: print("未找到该学员的id") b = int(input("请选择以下操作(1、继续删除 2、退出删除,返回学院系统界面)"))
2、修改学员信息代码实现
def rev_data(): a = True while a: global list_data num = int(input("请输入您所要修改的学员id:")) for data in list_data: if num == data["id"]: data["id"]=int(input("修改后的id为:")) data["name"]=input("修改名字为:") print("学员信息修改成功!") break else: print("未找到该学员的id") b = int(input("请选择以下操作(1、继续删除 2、退出删除,返回学院系统界面)")) if b == 2: print(list_data) a = False
(五)查询学员信息
1、用户输入目标学员姓名
num = input("请输入您所要查询的学员姓名:")
- 检查学员姓名是否存在
- 如果存在,则显示这个学员的信息
for data in list_data: if num == data["name"]: print(data.items()) break
- 如果不存在,则提示不存在
else: print("您所输入的学员姓名不存在!")
2、查询学院信息代码实现
def check_data(): a = True while a: global list_data num = input("请输入您所要查询的学员姓名:") for data in list_data: if num == data["name"]: print(data.items()) break else: print("您所输入的学员姓名不存在!") b = int(input("是否要继续查询学员姓名(1、继续查询 2、退出查询)")) if b == 2: print("成功退出查询界面") a = False
小结:学院管理系统主要分为五大类:main()主类、add_data()添加代码类、del_data删除代码类、rev_data()修改代码类、check_data()查询代码类;分别将之前学过的基础数据类型里的增删改查里的方法即可实现。
标签:管理系统,学员,list,print,input,data,id From: https://www.cnblogs.com/LoLong/p/16750890.html