第七课-函数改写信息管理系统

  1. 只需要一个while函数即可解决:
"""
班级学员管理系统
需求:
简单的设计一下首页。
1、添加学员信息,设计简单的页面
2、删除学员信息,学员信息为空则不执行操作
3、修改学员信息,学员信息为空不执行操作
4、查找学员信息,把学员信息,依次输出在终端页面
"""

Student_List = []
count = 0
while True:
    def adds():
        print('-------------------添加学员信息-------------------')
        for Idx in range(10000):
            Idx += 1  # 学号从1开始,应该本行代码放在开头,若放在末位则导致学号从0开始
            name = input(' * 请输入学员姓名:')
            age = input(' * 请输入学员年龄:')
            address = input(' * 请输入学员家庭地址:')
            stu_list = [Idx, name, age, address]
            Student_List.append(stu_list)
            print('* 学号:%s | 学生姓名:%s  | 年龄:%s  | 家庭住址:%s' % (Idx, stu_list[1], stu_list[2], stu_list[3]))
            choice = input('添加成功,是否继续添加? (退出请按n/N否则请按任意键继续) :')
            if choice == 'n' or choice == 'N':  # 不能写成 if choice == 'n' or 'N'
                print('*--------------------返回主界面-------------------')
                break
        return 0
    def modify():
        print('-------------------修改学员信息-------------------')
        if len(Student_List) == 0:
            print('无法修改:没有学员信息')
        else:
            while True:
                for idx, stu in enumerate(Student_List):
                    idx += 1
                    name = stu[0]
                    age = stu[1]
                    address = stu[2]
                    print('* 学号:%s | 学生姓名:%s  | 年龄:%s  | 家庭住址:%s' % (idx, stu[1], stu[2], stu[3]))
                name = input('请输入将要修改的学员姓名:')
                name1 = input('请输入要修改的学员姓名(无需修改请按 0):')
                age = input('请输入要修改的学员年龄(无需修改请按 0):')
                address = input('请输入要修改的学员家庭住址(无需修改请按 0):')
                for idx, stu in enumerate(Student_List):
                    stu = Student_List[idx]
                    if name == stu[1]:
                        if name1 != '0':
                            stu[1] = name1
                        if age != '0':
                            stu[2] = age
                        if address != '0':
                            stu[3] = address
                        print('* 学号:%s | 学生姓名:%s  | 年龄:%s  | 家庭住址:%s' % (idx, stu[1], stu[2], stu[3]))
                        break
                    idx += 1
                    if idx == Student_List.__len__():
                        print(name, '学生不存在')
                        break
                choice = input('修改成功,是否继续修改? (退出请按n/N否则请按任意键继续) :')
                if choice == 'n' or choice == 'N':
                    print('*--------------------返回主界面-------------------')
                    break
        return 0
    def delete():
        print('-------------------删除学员信息-------------------')
        if len(Student_List) == 0:
            print('无法删除:没有学员信息')
        else:
            while True:
                for idx, stu in enumerate(Student_List):
                    idx += 1
                    name = stu[0]
                    age = stu[1]
                    address = stu[2]
                    print('* 学号:%s | 学生姓名:%s  | 年龄:%s  | 家庭住址:%s' % (idx, stu[1], stu[2], stu[3]))
                name = input('请输入将要删除的学员姓名:')
                for idx, stu in enumerate(Student_List):
                    stu = Student_List[idx]
                    if name == stu[1]:
                        del Student_List[idx]
                        print('删除成功!')
                        break
                    idx += 1
                    if idx == Student_List.__len__():
                        print(name, '该学生不存在')
                        break
                for idx, stu in enumerate(Student_List):
                    idx += 1
                    name = stu[0]
                    age = stu[1]
                    address = stu[2]
                    print('* 学号:%s | 学生姓名:%s  | 年龄:%s  | 家庭住址:%s' % (idx, stu[1], stu[2], stu[3]))
                choice = input('是否继续删除? (退出请按n/N否则请按任意键继续) :')
                if choice == 'n' or choice == 'N':
                    print('*--------------------返回主界面-------------------')
                    break
        return 0
    def selects():
        for idx, stu in enumerate(Student_List):
            idx += 1
            name = stu[0]
            age = stu[1]
            address = stu[2]
            print('* 学号:%s | 学生姓名:%s  | 年龄:%s  | 家庭住址:%s' % (idx, stu[1], stu[2], stu[3]))
        return 0
    def main():
        #首页
        print('-------------学员管理系统--------------')
        print(' ')
        print('* 1.添加学员信息 ')
        print('* 2.修改学员信息 ')
        print('* 3.删除学员信息 ')
        print('* 4.查看学员信息 ')
        print('* 0.退出系统 ')
        print('--------------------------------------------------\n'
              '注意:初始系统不存有任何信息,第一步指令请不要输入0 \n   1以外的数或字,否则宕机!')
    main()
    num = int(input('* 请选择您要执行的操作:'))
    if count == 0 and num != 0 and num != 1:
        while 1:
            print('宕机')
    count += 1

    #添加学员信息
    if num == 1:
        adds()
    #修改学员信息
    elif num == 2:
        modify()
    #删除学员信息
    elif num == 3:
        delete()
    #查看学员信息
    elif num == 4:
        selects()
    #退出系统
    else:
        print('—————————感谢使用!——————————')
        break





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值