学生管理系统

import os
# 文件名
file_name = "itcast.txt"
# 保存所有数据的字典
#  {"小明":{"name":"小明", "age": "22"}}
all_dict = {}

# 5:显示所有学生
def select_allinfo():
    print("学生信息:")
    for key, value in all_dict.items():

        print("姓名:%s 年龄:%s" % (key, value["age"]))
        print("-"*30)


# 4:查询学生
def select_info():
    # 引导学生输入名字
    my_name = input("请输入您查询信息的名字:")
    # 判断
    if my_name in all_dict:

        print("学生信息:")
        print("姓名:%s 年龄:%s" % (my_name, all_dict[my_name]["age"]))

    else:
        print("您输入的名字有误!")


# 3:修改学生
def update_info():
    # 引导学生输入名字
    my_name = input("请输入您需要修改信息的名字:")
    # 判断
    if my_name in all_dict:

        # 引导用户输入修改后的年龄
        my_age = input("请输入您需要修改后的年龄:")

        all_dict[my_name]["age"] = my_age
        print("修改数据成功....")

    else:
        print("您输入的名字有误!")

# 2:删除学生
def delete_info():
    # 引导学生输入名字
    my_name = input("请输入您需要删除信息的名字:")
    # 判断
    if my_name in all_dict:
        del all_dict[my_name]
        print("删除数据成功...")
    else:
        print("您输入的名字有误!")


# 1:添加学生
def add_info():
    # 引导学生输入名字和年龄
    my_name = input("请输入您的名字:")
    my_age = input("请输入您的年龄:")
    # 构造小字典
    my_dict = {"name": my_name, "age": my_age}
    # 保存到字典中
    all_dict[my_name] = my_dict
    print("保存数据成功...")

# 保存学生信息数据 内存-> 硬盘
def save_info():

    # 01 如何把数据做成持久化保存 也就是说如何保存到文件中
    f = open(file_name, "w", encoding="utf-8")
    # 写入数据
    f.write(str(all_dict))
    # 关闭文件
    f.close()

# 读取硬盘的数据 硬盘->内存
def load_info():
    # 02 如何把磁盘的itcast.txt文件的数据读取到内存中 使用all_dict进行保存
    # 如果第一次启动程序 itcast.txt文件根本不存在
    if not os.path.exists(file_name):
        # 文件不存在
        f = open(file_name, "w", encoding="utf-8")
        # 写入数据
        f.write("{}")
        # 关闭
        f.close()

    f = open(file_name, "r", encoding="utf-8")
    # 读取数据
    ret = f.read()
    f.close()

    global all_dict
    # 赋值
    all_dict = eval(ret)

# 打印菜单
def print_menu():
    print("---------------------------")
    print("      学生管理系统 V1.0")
    print(" 1:添加学生")
    print(" 2:删除学生")
    print(" 3:修改学生")
    print(" 4:查询学生")
    print(" 5:显示所有学生")
    print(" 6:保存数据")
    print(" 7:退出系统")
    print("---------------------------")

# 主函数一样 把程序运行起来
def run():
    # 文件的数据保存到all_dict    load_info()
    # 死循环
    while True:
        print_menu()
        index = input("请选择:")
        # 判断
        if index == "1":
            add_info()
        elif index == "2":
            delete_info()
        elif index == "3":
            update_info()
        elif index == "4":
            select_info()
        elif index == "5":
            select_allinfo()
        elif index == "6":
            save_info()
        elif index == "7":
            print("欢迎下次使用...")
            break
        else:
            print("输入错误, 请重新输入...")


run()


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值