学生管理系统

一、功能展示

1.菜单

2. 添加学生

3查询学生

 4修改学生

 5删除学生

 二、代码展示

# 添加学员(姓名、年龄、联系方式)
print('****************开始添加学员信息!!****************')
name = input('请输入姓名:')
age = int(input('请输入年龄:'))
tel = input('请输入联系方式:')
# 学员信息,并把学员添加到学员列表
def func(**kwargs):
    return kwargs
student_information = func(name=name, age=age, tel=tel)
# print(student_information)
# 判断学员是否已经存在,使用异常处理方法
try:
    student_list.index(student_information)
except Exception as e:
    student_list.append(student_information)
    n += 1  # 学员序号
    print('****************添加学员信息成功!!****************')
else:
    print('学员已经存在!!请勿重复添加,将回到主页菜单页面!!!')
    break
# 查询学员(姓名、年龄、联系方式)
print('****************开始查询学员信息!!****************')
tn=input('1:查询所有学员 2:根据姓名关键字查询\n请选择查询项目:')
while not tn in '12':
    tn = input('没有该选项,请重新输入(1-2):')
if tn=='1':
    # 输出目前的学员
    if n == 1:
        print(f'目前没有学员!!')
    else:
        print(f'目前有{n - 1}位学员:')
        for x in range(0, n - 1):
            print(student_list[x])
    a = input('是否继续查询(y/n)?')
    while 'yYnN'.find(a) == -1:
        a = input('输入错误,请重新输入(y/n):')
    if a == 'n' or a == 'N':
        print('已经回到学员管理系统主页面!!')
        break  # 退出目前循环,回到主页面
    else:
        cn = '2'  # 继续查询学员信息
else:
    name=input('请输入学员姓名:')
    temp=0
    for x in range(0,n-1):
        if name in student_list[x].get('name'):
            print(student_list[x])
            temp+=1
    if temp==0:
        print('该学员不存在!!')
# 修改学员(姓名、年龄、联系方式)
print('****************开始修改学员信息!!****************')
    student_templist=[]
    print(f'目前有{n-1}位学员,信息如下:')
    for x in range(0, n - 1):
        student_templist.append(student_list[x])
        student_templist[x]['编号']=x+1
        print(student_templist[x])
    sn=int(input('请输入要修改的学生编号:'))
    temp=-1
    for x in range(0,n-1):
        if student_templist[x].get('编号')==sn:
            student_templist[x].pop('编号')
            tempstudent=student_templist[x].copy()
            temp=x
    if temp==-1:
        print('该学员不存在!!')
        a = input('是否继续修改(y/n)?')
        while 'yYnN'.find(a) == -1:
            a = input('输入错误,请重新输入(y/n):')
        if a == 'n' or a == 'N':
            print('已经回到学员管理系统主页面!!')
            break  # 退出目前循环,回到主页面
        else:
            cn = '4'  # 继续删除学员信息
    else:
        str = input('请输入要修改的部分(name、age、tel):')
        str1 = input('请输入修改后的内容:')
        print(f'你要修改的是该条学员的信息:{tempstudent}')
        a = input('确定修改吗(y/n)?')
        while 'yYnN'.find(a) == -1:
            a = input('输入错误,请重新输入(y/n):')
        if a == 'n' or a == 'N':
            print('已经取消修改!!')
            break  # 退出目前循环,回到主页面
        else:
            student_list[temp][str]=str1
            print('****************学员信息修改成功!!*****************')
# 删除学员
print('****************开始删除学员信息!!****************')
dn = input('1:删除所有学员 2:根据索引删除学员\n请选择删除项目:')
while not dn in '12':
    dn = input('没有该选项,请重新输入(1-2):')
if dn=='1':
    student_list.clear() # 删除所有学生
    print('****************成功删除所有学员!!****************')
    n=1
    break
else:
    student_templist = []
    print(f'目前有{n - 1}位学员,信息如下:')
    for x in range(0, n - 1):
        student_templist.append(student_list[x])
        student_templist[x]['编号'] = x + 1
        print(student_templist[x])
    sn = int(input('请输入要删除的学生编号:'))
    temp = -1
    for x in range(0, n - 1):
        if student_templist[x].get('编号') == sn:
            student_templist[x].pop('编号')
            tempstudent = student_templist[x].copy()
            temp = x
    if temp==-1:
        print('该学员不存在!!')
        a = input('是否继续删除(y/n)?')
        while 'yYnN'.find(a) == -1:
            a = input('输入错误,请重新输入(y/n):')
        if a == 'n' or a == 'N':
            print('已经回到学员管理系统主页面!!')
            break  # 退出目前循环,回到主页面
        else:
            cn = '4'  # 继续删除学员信息
    else:
        print(f'你要删除的是该学员吗:{tempstudent}')
        a = input('确定删除吗(y/n)?')
        while 'yYnN'.find(a) == -1:
            a = input('输入错误,请重新输入(y/n):')
        if a == 'n' or a == 'N':
            print('已经取消删除!!')
            break  # 退出目前循环,回到主页面
        else:
            student_list.pop(temp)
            print('****************成功删除该学员!!****************')  

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值