zoukankan      html  css  js  c++  java
  • python练习---购物车

    购物车
    功能要求:
    要求用户输入总资产,例如:2000
    显示商品列表,让用户根据序号选择商品,加入购物车
    购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
    购买成功,打印购买的商品列表
    扩展:
    登录验证
     1 user_status = False
     2 def login():
     3     name_list = [
     4         {'username': '张三', 'password': '123'},
     5         {'username': '李四', 'password': '456'},
     6         {'username': '王二', 'password': '789'},
     7     ]
     8     global user_status
     9     if user_status == False:
    10         username = input("请输入用户名:").strip()
    11         password = input("请用户密码:").strip()
    12         for i in name_list:
    13             if username == i["username"] and password == i["password"]:
    14                 print("login successfully")
    15                 user_status = True
    16                 break
    17             else:
    18                 print("User name or password error.")
    19                 exit()
    20     else:
    21         print("用户已登录,验证成功")
    22 
    23 
    24 def shopping():
    25     login()
    26     list_cart = []
    27     goods = [{"name": "电脑", "price": 1999},
    28                {"name": "鼠标", "price": 10},
    29              {"name": "游艇", "price": 20},
    30              {"name": "美女", "price": 998},
    31     ]
    32     gongzi = input("请输入您的工资:")
    33     while not gongzi.isdigit():
    34         print("输入内容只能由数字组成")
    35         gongzi = input("输入有误,请输入正确格式:")
    36     gongzi = int(gongzi)
    37     while True:
    38         print("商品列表".center(50, "#"))
    39         print("编号".center(8, " "), "名称".center(30, " "), "价格".ljust(10, " "))
    40         print("".center(53, "-"))
    41         for i in goods:
    42             print(str(goods.index(i)).center(10, " "), str(i["name"]).center(30, " "), str(i["price"]).ljust(10, " "))
    43             print("".center(53, "-"))
    44         bianhao = input("请您输入商品编号或q:")
    45         if bianhao.isdigit():
    46             bianhao = int(bianhao)
    47             if bianhao >= 0 and bianhao < int(len(goods)):
    48                 if (gongzi - goods[bianhao]["price"]) >= 0:
    49                     list_cart.append(goods[bianhao])
    50                     gongzi -= goods[bianhao]["price"]
    51                     print("33[32;1m您的预算还有%d33[0m" % gongzi)
    52                 else:
    53                     print("33[1;31;1m余额不足啦...33[0m")
    54             else:
    55                 print("您输入的商品不存在")
    56         elif bianhao == "q":
    57             break
    58         else:
    59             print("33[32;1m您输入有误33[0m")
    60     print("33[32;1m还剩%d元33[0m" % gongzi)
    61     print("购物车详情".center(50,"#"))
    62     print("编号".center(8, " "), "名称".center(30, " "), "价格".ljust(10, " "))
    63     print("".center(53, "-"))
    64     for i in list_cart:
    65         print(str(list_cart.index(i)).center(10, " "), str(i["name"]).center(30, " "), str(i["price"]).ljust(10, " "))
    66         print("".center(53, "-"))
    67 
    68 shopping()
  • 相关阅读:
    PipeCAD
    PipeCAD
    RvmTranslator7.4.1-Clipping Box
    RvmTranslator7.4.0-PDMS Text
    PipeCAD
    Pentaho、spagoBI 开源BI --- 以及开源 ETL 工具 Kettle、Talend
    (推荐)成都数字医健科技有限公司--医药大数据中心与生命科学情报咨询服务中心
    成都智审数据有限公司--企业内部审计专家
    数据仓库与数据分析--产品与软件商
    上海宝冶:信息化与标准化融合,助推企业转型升级
  • 原文地址:https://www.cnblogs.com/watchslowly/p/8933842.html
Copyright © 2011-2022 走看看