6.5-2Python之字典嵌套字典的使用

基于字典的客户信息管理系统,使用列表嵌套字典完成。

代码逻辑参考【6.5-1Python之列表嵌套字典的使用】

在此基础上做优化处理:

# 初始化客户信息列表:字典嵌套字典,每一个客户的key值唯一
customers = {
   "1001": {"name": "Alice", "age": 25, "email": "alice@example.com"},
   "1002": {"name": "Bob", "age": 30, "email": "bob@example.com"},
   "1003": {"name": "Charlie", "age": 35, "email": "charlie@example.com"}
}

while True:
    print("""--------------欢迎进入客户管理系统--------------
           1. 添加客户
           2. 删除客户
           3. 修改客户
           4. 查询一个客户
           5. 查询所有客户
           6. 退出
-------------------------------------------""")
    choice = input("请输入你的选择:")
    # 1. 添加客户
    if choice == "1":
        id = input("请填写ID:")

        # 若 ID 已存在,则提示已被使用
        if id in customers:
            print(f"该ID{id}已被注册使用!")
        else:
            name = input("请填写姓名:")
            age = int(input("请填写年龄:"))
            email = input("请填写邮箱:")
            # 直接使用字典的添加操作
            customers[id] = {
                            "name": name,
                            "age": age,
                            "email": email
                            }
            print(f"你已添加新的客户信息:ID{id},{customers[id]}")
    # 2. 删除客户
    elif choice == "2":
        # 判断是否有客户信息,无则提示
        if not customers:
            print("暂无客户信息!")
        else:
            delete_customer_id = input("请填写需要删除的客户ID:")

            if delete_customer_id in customers:
                print(f"已删除客户ID{delete_customer_id}的信息:{customers[delete_customer_id]}")
                # 直接使用字典的删除操作
                del customers[delete_customer_id]
            else:
                print(f"查无此客户ID:{delete_customer_id}")
    # 3. 修改客户
    elif choice == "3":
        # 判断是否有客户信息,无则提示
        if not customers:
            print("暂无客户信息!")
        else:

            update_customer_id = input("请填写需要修改的客户ID:")

            if update_customer_id in customers:
                print(f"客户ID{update_customer_id}的信息:{customers[update_customer_id]}")

                name = input("请填写修改后的姓名:")
                age = int(input("请填写修改后的年龄:"))
                email = input("请填写修改后的邮箱:")
                # 直接使用字典的修改操作
                customers[update_customer_id] = {
                    "name": name,
                    "age": age,
                    "email": email
                }
                print(f"已将客户ID{update_customer_id}的信息修改为:{customers[update_customer_id]}")
            else:
                print(f"查无此客户ID:{update_customer_id}")
    # 4. 查询一个客户
    elif choice == "4":
        # 判断是否有客户信息,无则提示
        if not customers:
            print("暂无客户信息!")
        else:

            search_customer_id = input("请填写需要查询的客户ID:")

            if search_customer_id in customers:
                print(f"客户ID:{search_customer_id}:"
                      f"姓名:{customers[search_customer_id].get("name")},年龄:{customers[search_customer_id].get("age")},邮箱:{customers[search_customer_id].get("email")}")
            else:
                print(f"查无此客户的信息:{search_customer_id}")
    # 5. 查询所有客户
    elif choice == "5":
        # 判断是否有客户信息,无则提示
        if not customers:
            print("暂无客户信息!")
        else:
            print("客户信息如下:")
            for customer_key, customer_value in customers.items():
                # 打印客户的相关信息
                print("客户ID:", customer_key, f":姓名:{customer_value["name"]},年龄:{customer_value["age"]},邮箱:{customer_value["email"]}")
    # 6. 退出
    elif choice == "6":
        print("你已退出系统,感谢你的使用!")
        break
    # 其他情况
    else:
        print("输入的参数有误,请重新输入!")

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飛燚非燚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值