基于python的学生管理系统搭建

基于python的学生管理系统

学生信息添加功能

该部分内容具有以下功能:
1 添加学生信息
2 实现循环添加
3 实现关键字结束添加功能
具体要求如下:

1 输入学生的姓名,年龄,电话
2 创建一个字典,将输入的姓名,年龄,电话存入字典中
3 将字典存放到一个大的列表中

students = []
# 添加学生信息
def add_stu():
    while True:
        name = input('请输入学生姓名(输入q结束添加):')
        if name == 'q':
            break
        age = input('请输入学生年龄:')
        phone = input('请输入学生联系方式:')
        stu = {'name':name,'age':age,'phone':phone}
        students.append(stu)

学生信息查询功能

该功能分为两个:
功能一: 一键查询所有学生信息
功能二:根据名称里面的关键字查询所有学生信息
具体要求如下:
1 查询所有学生信息 遍历大列表取出包含每个学生信息的字典 根据字典的key取出相应的value
2根据关键字查询学生信息 输入一个关键字,遍历大列表,取出响应的字典判断字典中的name中是否包含输入的关键字,若包含则输出对应的学生信息
下面这段代码是实现功能一:

def query_all():
    if len(students) == 0:
        print('** 暂无学生信息,请稍后重试!')
        return
    for x in range(0,len(students)):
        stu = students[x]
        name = stu['name']
        age = stu['age']
        phone = stu['phone']
        print(f'*索引:{x} *姓名:{name} *年龄:{age} *联系方式:{phone}')

下面这段代码是实现功能二:

# 按照关键字查询学生信息
def query_key():
    key = input('请输入要查询的关键字:')
    for x in range(0,len(students)):
        stu = students[x]
        name = stu['name']
        if key in name:
            age = stu['age']
            phone = stu['phone']
            print(f'*索引:{x} *姓名:{name} *年龄:{age} *联系方式:{phone}')

下面这段代码是整合两个功能实现学生信息查询:

# 查询学生信息
def query():
    if len(students) == 0:
        print('** 暂无学生信息,请稍后重试!')
        return
    print('*a* 查询所有学生信息')
    print('*b* 关键字查询生信息')
    select = input('** 请输入您的查询方式:')
    while select != 'a' and select != 'b':
        select = input('输入有误,请重新输入查询方式:')
    if select == 'a':
        query_all()
    else:
        query_key()

修改学生信息

具体要求如下:
1 输出所有学生信息
2 输入要修改的学生索引
3 根据索引取出字典
4 根据key修改字典中的value
实现该部分功能的代码为:

# 修改学生信息
def update():
    if len(students) == 0:
        print('** 暂无学生信息,请稍后重试!')
        return
    query_all()
    idx = int(input('** 请输入要修改的学生索引:'))
    while idx < 0 or idx >= len(students):
        idx = int(input('** 输入有误,请重新输入您的选择:'))
    stu = students[idx]
    new_name = input('** 请输入修改后的姓名(%s):'%stu['name'])
    new_age = input('** 请输入修改后的年龄(%s):'%stu['age'])
    new_phone = input('** 请输入修改后的联系方式(%s):'%stu['phone'])
    stu['name'] = new_name
    stu['age'] = new_age
    stu['phone'] = new_phone
    print('** 修改成功 **')

删除学生信息

具体功能如下:
根据索引删除学生信息
输出所有的学生信息
选择要删除的学生索引,输入该索引
根据索引删除学生信息
一键删除所有学生信息
每次删除前都有确认删除安全提示功能
该部分代码如下:

# 删除学生信息
def delete():
    if len(students) == 0:
        print('** 暂无学生信息,请稍后重试!')
        return
    print('*a* 根据索引删除学生信息')
    print('*b* 一键删除所有学生信息')
    select = input('** 请输入删除方式:')
    while select != 'a' and select != 'b':
        select = input('** 输入有误,请重新输入您的选择:')
    if select == 'a':
        query_all()
        idx = int(input('** 请输入要删除的学生索引:'))
        while idx < 0 or idx >= len(students):
            idx = int(input('** 输入有误,请重新输入要删除的学生索引:'))
        stu = students[idx]
        is_del = input('** 确认要删除(%s)吗? y/n:' %stu['name'])
        if is_del == 'y':
            del students[idx]
            print('** 删除成功 **')
    else:
        is_del = input('** 确认要删除所有学生信息吗? y/n:' )
        if is_del == 'y':
            students.clear()
            print('** 所有学生信息删除成功 **')

管理界面

管理界面如下,后期继续完善相关代码,喜欢请关注下谢谢~
在这里插入图片描述

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值