Python客户管理小脚本

关于这Python脚本,它实现了一个简单的客户数据管理系统。这个系统允许用户进行以下操作:

  1. 添加客户:用户可以通过输入姓名、年龄和邮箱来添加新的客户数据。这些数据会被添加到customers列表中。

  2. 删除客户:用户可以通过输入客户的姓名来删除该客户的数据。如果找到了对应的客户,则将其从customers列表中移除。

  3. 修改客户:用户可以通过输入要修改的客户姓名来找到该客户,并输入新的姓名、年龄和邮箱来更新其数据。

  4. 查询一个客户:用户可以通过输入客户的姓名来查询该客户的详细信息。如果找到了对应的客户,则会打印出其姓名、年龄和邮箱。

  5. 查询所有客户:用户可以查询并打印出所有客户的姓名、年龄和邮箱。如果列表为空,则会提示“数据为空”。

  6. 退出:用户可以选择退出程序,此时程序将结束运行。

  7. 删除所有用户数据:这是一个谨慎的操作,用户需要确认是否要删除所有客户数据。如果确认,则customers列表将被清空,并打印出“已清空当前所有客户数据”。

在脚本中,你使用了while True循环来不断显示菜单并接受用户的输入,直到用户选择退出。这种结构使得程序能够持续运行,直到用户明确选择停止。

此外 没有做数据持久化,当前脚本中的数据是存储在内存中的,一旦程序结束,所有数据都会丢失。你可以考虑将数据保存到文件中,这样即使程序关闭,数据也能被保留下来。可以使用Python的内置模块如picklejson来实现数据的序列化和反序列化。

大家可以将这脚本当成一个示例去完善和借鉴,若有bug 请多多指教

customers = [
    ["Ace", 25, "alice@123.com"],
    ["enson", 30, "bob@123.com"],
    ["jj", 30, "bob@123.com"],
    ["harry", 35, "charlie@123.com"]
]
while True:
    print("""
         1. 添加客户
         2. 删除客户
         3. 修改客户
         4. 查询一个客户
         5. 查询所有客户
         6. 退出
         7. 删除所有用户数据,谨慎操作!!!
         
    """)

    choice = input("输入您的选择:")

    if choice == "1":
        add_customers_name = input("请输入要添加的姓名:")
        add_customers_age = int(input("请输入要添加的年龄:"))
        add_customers_email = input("请输入要添加的邮箱:")
        add_customers = [add_customers_name, add_customers_age, add_customers_email]
        customers.append(add_customers)
        print(f"你已经成功添加用户{add_customers_name}")

    if choice == "2":
        flog = False
        name = input("请输入要删除用户的名称:")
        for i in customers:
            if i[0] == name:
                customers.remove(i)
                flog = True
                continue
        if flog:
            print(f"已删除用户{name}")
        else:
            print(f"没有找到用户{name}")

    if choice == "3":
        name = input("请输入要修改用户的名称:")
        for i in customers:
            if i[0] == name:
                print(i)
                new_name = input("请输入新用户名称:")
                new_age = int(input("请输入年龄新值:"))
                new_email = input("请输入邮箱新值:")
                i[0] = new_name
                i[1] = new_age
                i[2] = new_email
        print(customers)

    if choice == "4":
        query_customer_name = input("请输入要查询的用户名称:")
        flog = False
        for i in customers:
            if i[0] == query_customer_name:
                print(f"姓名{i[0]},年龄{i[1]},邮箱{i[2]}")
                flog = True
                continue
        if flog:
            print()
        else:
            print(f"没有找到用户{query_customer_name}")

    if choice == "5":
        if len(customers) == 0:
            print("数据为空")
        else:
            for i in customers:
                print(f"姓名:{i[0]:8},年龄:{i[1]},邮箱:{i[2]:4}")

    if choice == "6":
        break

    if choice == "7":
        f = input("你确定要删除所有数据,这一步是不可逆的,请选择(Y/N):")
        if f == "Y":
            customers.clear()
            print("已清空当前所有客户数据")
            print(f"当前库的状态{customers}")
        elif f == "N":
            print("我们将退出删除操作")
            continue
        else:
            print(f"{f}无效输入,退出当前操作")

    if choice not in ("1,2,3,4,5,6"):
        print("输入错误重新输入")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值