首页 > 代码库 > 购物车
购物车
需求 要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品,加入购物车 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。 附加:可充值、某商品移除购物车
测试信息 goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ]
goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ] # 定义函数,格式化菜单输出 def menu(): count=0 for i in goods: print(‘【{0}】 {1} {2}‘.format(count,i[‘name‘],i[‘price‘])) count+=1 # 定义购物车空列表 goods_list=[] tag=True while tag: money=input(‘How much are you ?‘).strip() # 判断输入的数据类型 if money.isdigit() and len(money) != 0 : money = int(money) while tag: menu() choice=input(‘请输入你要购买的商品序号:‘).strip() if choice.isdigit() and len(choice) != 0 : choice=int(choice) if choice >= 0 and choice <= 3: # 取出所买商品的信息 g_l=[] for i in goods: g_l.append({i[‘name‘]: i[‘price‘]}) info=g_l[choice] price_list=list(info.values()) price=int(price_list[0]) name_list=list(info.keys()) # 使用a的值来控制下面两层while循环 a=1 while a == 1: if money >= price: money=money - price print(‘商品已加入购物车,当前余额为{}‘.format(money)) goods_list.append(name_list[0]) while a == 1: print(‘当前购物车里商品:‘,goods_list) choices=input(‘‘‘ 【E】 结账 【D】 删除商品 【S】 继续购买 请选择:‘‘‘).strip().lower() if choices != ‘e‘ and choices != ‘d‘ and choices != ‘s‘: print(‘选择错误,请重新输入:‘) continue if choices == ‘s‘: a=0 break if choices == ‘e‘: print(‘已结账,当前余额为{}‘.format(money)) a=0 tag=False if choices == ‘d‘: print(goods_list) delet=input(‘请输入你想删除的商品:‘).strip() if delet in goods_list: goods_list.remove(delet) print(‘%s 删除成功!‘ %delet) continue else: print(‘此商品不在购物车‘) continue else: print(‘你买不起这个,请选择:‘) choicess=input(‘‘‘ 【A】 重新选择商品 【B】 充值 【C】 退出 请选择:‘‘‘).strip().lower() if choicess == ‘a‘: a=0 if choicess == ‘c‘: exit() while a == 1: if choicess == ‘b‘: recharge=input(‘请输入充值金额:‘).strip() if recharge.isdigit() and len(recharge) != 0: recharge = int(recharge) money = money + recharge print(‘充值成功,当前金额为:‘,money) break else: print(‘充值金额有误‘) continue else: print(‘没有此商品,请重新选择‘) continue else: print(‘你的输入有误,请输入数字:‘) continue
本文出自 “lyndon” 博客,请务必保留此出处http://lyndon.blog.51cto.com/11474010/1947432
购物车
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。