Python课程设计之学生信息管理系统(列表存储)

Python课程设计之学生信息管理系统(列表存储)

功能介绍

基于Python实现简易学生信息管理系统,一共5个功能。列表嵌套字典添加学生信息、根据学号或电话删除学生信息、根据学号删除学生信息、显示所有信息(可根据需要修改)。学生信息包括、学号、姓名、性别、电话(可根据需要修改)。

*************************
学生信息管理系统
1.添加学生信息
2.删除学生信息(学号)
3.删除学生信息(电话)
4.修改学生信息(学号)
5.显示所有学生信息
0.退出系统
*************************
代码实现
# 定义列表来存储学生信息
stu_list = []


# 主菜单
def menu():
    print('*' * 25)
    print('学生信息管理系统')
    print('1.添加学生信息')
    print('2.删除学生信息(学号)')
    print('3.删除学生信息(电话)')
    print('4.修改学生信息(学号)')
    print('5.显示所有学生信息')
    print('0.退出系统')
    print('*' * 25)


# 添加学生信息
def add_stu():
    stu_num = input('输入学生学号:')
    name = input('输入学生姓名:')
    sex = input('输入学生性别:')
    phone = input('输入学生电话:')
    new_info = dict()  # 定义一个字典
    new_info['stu_num'] = stu_num
    new_info['name'] = name
    new_info['sex'] = sex
    new_info['phone'] = phone
    stu_list.append(new_info)


# 删除学生信息(根据电话)
def del_by_phone(student):
    while True:
        # 删除
        del_phone = input("输入删除的学生姓名:")
        find_flag = False
        for line in student:
            if line['phone'] == del_phone:
                find_flag = True
                student.remove(line)

        if find_flag:
            print("***此学生信息已删除***")
        else:
            print("***该电话不存在***")
        show_stu()


# 删除学生信息(根据学号)
def del_by_num(student):
    while True:
        # 删除
        del_num = input("输入删除的学生学号:")
        find_flag = False
        for line in student:
            if line['stu_num'] == del_num:
                find_flag = True
                student.remove(line)
        if find_flag:
            print("***此学生信息已删除***")
        else:
            print("***该学号不存在***")
        show_stu()


# 修改学生信息(根据学号)
def rev_by_num():
    while True:
        # 删除
        rev_num = input("输入修改的学生学号:")
        find_flag = False
        for line in stu_list:
            if line['stu_num'] == rev_num:
                find_flag = True
                stu_list.remove(line)
                add_stu()
        if find_flag:
            print("***此学生信息已修改***")
        else:
            print("***该学号不存在***")
        show_stu()


# 查找全部学生信息
def show_stu():
    if len(stu_list) != 0:
        print('学生的信息如下:')
        print('=' * 30)
        print('学号  姓名  性别  手机号码')

        for temp_info in stu_list:
            print("%s  %s  %s  %s" % (temp_info['stu_num'], temp_info['name'], temp_info['sex'], temp_info['phone']))
    else:
        print('***学生信息表为空***')


# 定义主函数
def main():
    while True:
        menu()
        key = input('请输入选项(0-5):')
        if key == '1':
            # 添加学生信息
            add_stu()
        elif key == '2':
            # 删除学生信息(根据学号)
            del_by_num(stu_list)
        elif key == '3':
            # 删除学生信息(根据电话)
            del_by_phone(stu_list)
        elif key == '4':
            # 修改学生信息(根据学号)
            rev_by_num()
        elif key == '5':
            # 显示所有学生信息
            show_stu()
        elif key == '0':
            # 退出系统
            quit_confirm = input('确定退出系统(Yes/No):')
            if quit_confirm == 'Yes' or quit_confirm == 'yes' or quit_confirm == 'YES':
                break
            elif quit_confirm == 'No' or quit_confirm == 'no' or quit_confirm == 'NO':
                continue
            else:
                print('***输入有误,请重新输入***')
        else:
            print('***输入有误,请重新输入***')


if __name__ == '__main__':
    main()

代码非常简单,后续会写使用pandas、numpy等工具包存储学生信息到csv或xlsx表格中。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值