【学习笔记2】python 简单的学生管理系统demo

今天学习了python的基础数据类型,发现单纯的看是没用的,动手敲了一个小的demo,其中用到的数据类型为list和字典。

目标:

1、实现功能为简单的增删改查。

2、不借助数据库存储数据。

---------------------------
  学生管理系统 V1.0
 1:添加学生
 2:删除学生
 3:修改学生
 4:查询学生
 5:显示所有学生
 6:退出系统
---------------------------

代码实现:

# 存储所有学生信息
info_list = []

# info_list.append({'name': 'gaocuili-默认', 'age': '22', 'tel': '15938647616'})

def print_menu():

    print("---------------------------")
    print("      学生管理系统 V1.0")
    print(" 1:添加学生")
    print(" 2:删除学生")
    print(" 3:修改学生")
    print(" 4:查询学生")
    print(" 5:显示所有学生")
    print(" 6:退出系统")
    print("---------------------------")

def add_new_info():

    global info_list

    new_name    = input("请输入学生姓名:")
    new_age     = input("请输入学生年龄:")
    new_tel     = input("请输入联系方式:")


    for temp_info in info_list:

        if temp_info['name'] == new_name:
            print("此用户名已被占用,请重新输入")
            return


    # 字典,存储单个学生信息
    info = {}

    info["name"]    =   new_name
    info["age"]     =   new_age
    info["tel"]     =   new_tel

    info_list.append(info)

    get_all_info()


def del_info():

    global info_list

    get_all_info()
    del_num = int(input("请输入需要删除的序号(从0开始):"))

    if 0 <= del_num <= len(info_list):
        del_flag = input("你确定要删除么?yes or no")
        if del_flag == 'yes':
            del info_list[del_num]

    get_all_info()



def get_all_info():

    global info_list

    print("序号\t姓名\t年龄\t联系方式")

    num = 0
    for info in info_list:
        print(str(num) + '\t' + info['name'] + '\t' + info['age'] + '\t' + info['tel'])
        num += 1



def modify_info():

    global info_list

    get_all_info()
    num = int(input("请输入想要修改学生信息的序号:"))

    if 0 <= num <= len(info_list):
        info_list[num]["name"]  = input("请输入新的学生姓名:")
        info_list[num]["age"]   = input("请输入新的学生年龄:")
        info_list[num]["tel"]   = input("请输入新的联系方式:")
    else:
        print("输入序号有误")

    get_all_info()


def search_info():

    global info_list

    name = input("请输入想要查找信息的学生姓名:")

    for info in info_list:

        if name == info['name']:

            print("姓名: %s\t年龄: %s\t联系方式: %s", (info_list[name]['name'], info_list[num]['name'], info_list[num]['name']))

        else:

            print("查无此人")

def main():

    while True:

        print_menu()

        choose = input("请选择相应的操作:")

        if choose == '1':

            add_new_info()

        elif choose == '2':

            del_info()

        elif choose == '3':

            modify_info()

        elif choose == '4':

            search_info()

        elif choose == '5':

            get_all_info()

        elif choose == '6':

            res = input("亲,你确定要退出么?~~~~(>_<)~~~~(yes or no) ")
            if res == 'yes':
                break
        else:
            print("输入操作有误......")

        input("\n按回车键继续....")


main()

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值