Python函数加强[学员管理系统]

Python函数巩固加强练习



前言

本章知识点:
1.变量
2.列表,元组,字典,集合
3.循环
4.选择结构
5.函数


一、学员管理系统简介

需求:进入系统显示系统功能界面,功能如下:

1.添加学员
2.删除学员
3.修改学员信息
4.查询学员信息
5.显示所有学员信息
6.退出系统

系统共6个功能,用户根据自己需求选取

二、步骤分析

1. 显示功能界面
2. 用户输入功能序号
3. 根据用户输入的功能序号,执行不同的功能(函数)
3.1 定义函数
3.2 调用函数

1.添加学员

需求分析

  1. 接收用户输入学员信息,并保存
  2. 判断是否添加学员信息
    2.1 如果学员姓名已经存在,则报错提示
    2.2 如果学员姓名不存在,则准备空字典,将用户输入的数据追加到字典,再列表追加字典数据
  3. 对应的if条件成立的位置调用该函数

2.删除学员

需求分析
按用户输入的学员学号进行删除

  1. 用户输入目标学员学号
  2. 检查这个学员是否存在
    2.1 如果存在,则列表删除这个数据
    2.2 如果不存在,则报错,并重新输入
  3. 对应的if条件成立的位置调用该函数

3.修改学员信息

需求分析

  1. 用户输入目标学员学号
  2. 检查这个学员是否存在
    2.1 如果存在,显示此学员信息,并供用户输入新的信息
    2.2 如果不存在,则报错,并重新输入
  3. 对应的if条件成立的位置调用该函数

4.查询学员信息

需求分析

  1. 用户输入目标学员姓名
  2. 检查学员是否存在
    2.1 如果存在,则显示这个学员的信息
    2.2 如果不存在,则报错提示
  3. 对应的if条件成立的位置调用该函数

5.显示所有学员信息与退出系统

需求分析
打印所有学员信息

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


三.系统实现

先定义一个空列表,并将要实现的功能写出来

StudentLis = []


def title():
    print('----------------\n1.添加学员\n2.删除学员\n3.修改学员信息\n4.查询学员信息\n5.显示所有学员\n6.退出系统\n--------------------')


添加学员方法,用函数封装起来,供循环调用

def addStu():
    print('-----添加学员------')
    name = input('请输入学员姓名:')
    for i in StudentLis:
        if i['name'] == name:
            return 0
    else:
        age = int(input('请输入学员年龄:'))
        address = input('请输入学员住址:')
        StuDic = {'name': name, 'age': age, 'address': address}
        StudentLis.append(StuDic)
        return 1

删除学员方法

def delstu(name):
    for i in StudentLis:
        if i['name'] == name:
            StudentLis.remove(i)
            return 1
    else:
        return 0

修改学员方法

def updStu(name1):
    for i in StudentLis:
        if i['name'] == name1:
            sname = input('请输入更新的姓名:')
            age = int(input('请输入更新的年龄:'))
            address = input('请输入更新的地址:')
            ss=StudentLis.index(i)
            StudentLis[ss]['name']=sname
            StudentLis[ss]['age']=age
            StudentLis[ss]['address']=address
            return 1
    else:
        return 0

根据条件查询学员

def seleStu(name):
    for i in StudentLis:
        if i['name'] == name:
            return i
    else:
        return 0

查询所有,我直接遍历出来的

        if len(StudentLis) != 0:

            for i in StudentLis:
                print(i)
        else:
            print('暂时没有学员')

while循环系统实现

while True:
    title()
    user = int(input('请输入操作序号:'))
    if user == 1:
        j = addStu()
        if j == 1:
            print('添加学员成功!!')
        else:
            print('添加学员失败,该学员已存在!!')
    elif user == 2:
        print('-----删除学员-------')
        name=input('请输入要删除的学员姓名:')
        j=delstu(name)
        if j == 1:
            print('删除成功')
        else:
            print('删除失败')
    elif user == 3:
        print('修改学员信息')
        name=input('请输入要修改的学员信息:')
        j=updStu(name)
        if j == 1:
            print('修改成功!')
        else:
            print('修改失败!')
    elif user == 4:
        print('查询学员信息')
        name=input('请输入要查询的学员信息:')
        stu=seleStu(name)
        if stu != 0:
            print(stu)
        else:
            print('查无此人!')
    elif user == 5:
        print('显示所有学员信息')
        if len(StudentLis) != 0:

            for i in StudentLis:
                print(i)
        else:
            print('暂时没有学员')

    else:
        print('退出系统,再见!')
        break

四.小结

学员管理系统不难实现,其主要目的是锻炼函数使用与调用,并巩固自己的理解,这个系统有多种多样的做法,我这只是一种,感兴趣的可以自己实现.
有哪里不足或者有更好的建议,欢迎留言吐槽,如果有哪里不懂的小伙伴,可以私信博主.博主将一一回复,感谢认可,感谢支持!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

道而起

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

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

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

打赏作者

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

抵扣说明:

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

余额充值