Python系列 设计学生管理系统

1.1 系统简介

需求:进⼊系统显示系统功能界⾯,功能如下:

添加学员

删除学员

修改学员信息

查询学员信息

显示所有学员信息

退出系统

系统共6个功能,⽤户根据⾃⼰需求选取。

1.3.1显示功能界⾯

定义函数print_info,负责显示系统功能。

⼯作中,需要根据实际需求调优代码。

1. ⽤户选择系统功能的代码需要循环使⽤,直到⽤户主动退出系统。

2. 如果⽤户输⼊1-6以外的数字,需要提示⽤户。

1.3.4.1 添加学员

需求分析

1. 接收⽤户输⼊学员信息,并保存

2. 判断是否添加学员信息

2.1 如果学员姓名已经存在,则报错提示

2.2 如果学员姓名不存在,则准备空字典,将⽤户输⼊的数据追加到字典,再列表追加字典数据

3. 对应的if条件成⽴的位置调⽤该函数

1.3.4.2 删除学员

需求分析

按⽤户输⼊的学员学号进⾏删除

1. ⽤户输⼊⽬标学员学号

2. 检查这个学员是否存在

2.1 如果存在,则列表删除这个数据

2.2 如果不存在,则报错,并重新输⼊

3. 对应的if条件成⽴的位置调⽤该函数


 

1.3.4.3 修改学员信息

需求分析

1. ⽤户输⼊⽬标学员学号

2. 检查这个学员是否存在

2.1 如果存在,显示此学员信息,并供⽤户输⼊新的信息

2.2 如果不存在,则报错,并重新输⼊

3. 对应的if条件成⽴的位置调⽤该函数

1.3.4.4 查询学员信息

需求分析

1. ⽤户输⼊⽬标学员姓名

2. 检查学员是否存在

2.1 如果存在,则显示这个学员的信息

2.2 如果不存在,则报错提示

3. 对应的if条件成⽴的位置调⽤该函数

1.3.4.5 显示所有学员信息

需求分析

打印所有学员信息

代码实现

1.3.4.6 退出系统

在⽤户输⼊功能序号6的时候要退出系统

来源于 黑马程序员

17-退出系统_哔哩哔哩_bilibili

def print_information():
        print('-'*20)
        print('欢迎登陆学员管理系统')
        print('1:添加学员')
        print('2:删除学员')
        print('3:修改学员信息')
        print('4:查询学员信息')
        print('5:显示所有学员信息')
        print('6:退出系统')
        print('-'*20)



def add_student():
    global info
    new_id=input('输入id')
    new_name=input('输入name')
    new_phone=input('输入phone')
    for i in info:
        if new_id==i['id']:
            return
    info_dict={}
    info_dict['id']=new_id
    info_dict['name']=new_name
    info_dict['phone']=new_phone
    info.append(info_dict)
def delete_student():
    global info
    while 1:
        del_id=int(input('输入要删除的id:'))
        if 0<=del_id<len(info):
            judge=input('确认要删除?Y or N')
            if judge=='Y':
                for i in info:
                   if del_id== i['id']:
                       del i
                       print(info)
                       break
        else:
            print('超出范围,重新输入')

def modify_student():
    global info
    target_id=int(input('输入目标id'))
    if 0<=target_id<len(target_id):
        print('有效输入')
        for i in info:
            if i['id']==target_id:
                i['id']=input('输入新的id')
                i['name']=input('输入新的name:')
                i['phone']=input('输入新的phone')
                print(info)
                break
    else:
        print('输入有误')

def search_student():
    while 1:
        global info
        search_id=int(input('请输入你要查询的学生id'))
        if 0<=search_id<len(info):
            print('输入有效')
            for i in info:
                if search_id==i['id']:
                    print(f'该生学号为{i["id"]},姓名是{i["name"]},手机是{i["phone"]}')
                    break
        else :
            print("输入错误重新输入")

def display_all_the_information():
    print('显示学员信息')
    print('id\tname\ttelephone number\t')
    global info
    for i in info:
        print(f"{i['id']}\t{i['name']}\t{i['phone']}")


info=[]
print(type(info))

while 1:

    print_information()
    numberofinput = input('请选择你需要的功能 输入数字序号')
    if numberofinput=='1':
        print('添加学员')
        add_student()
    elif numberofinput=='2':
        print('删除学员')
        delete_student()
    elif numberofinput=='3':
        print('修改学员')
        modify_student()
    elif numberofinput=='4':
        print('查找学员')
        search_student()
    elif numberofinput=='5':
        print('展示所有学员')
        display_all_the_information()
    elif numberofinput=='6':
        print('退出程序')
        target=input('确认退出程序吗?yes or no')
        if target=='yes':
            break



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨骅麟(Patrick Young)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值