简单的购物车功能 (while实现)

 1 #商品列表
 2 commodity=[
 3         {'name':'小米plus', 'price':2899},
 4         {'name':'魅族6', 'price':999},
 5         {'name':'TCL电视', 'price':8999},
 6         {'name':'天猫盒子', 'price':1289},
 7         {'name':'Tp_link路由器', 'price':699},
 8         {'name':'BMW超跑', 'price':512899},
 9         {'name':'中央空调', 'price':5999},
10     ]
11 cart={}
12 flg=True
13 print('欢迎光临超讯科技家电中心>>>>>>')
14 money=input('请出示你的银行卡金额:').strip()
15 if money.isdigit() and int(money)>0:        #金额大于0才能看到菜单
16     while flg:
17         for i,j in enumerate(commodity):    #枚举获得列表菜单
18             print('{}-{}:¥{}RMB'.format(i,j['name'],j['price']))
19         goods = input('请输入你想购买的商品编号或者按‘Q’退出')
20         if goods.isdigit() and int(goods) in range(0,len(commodity)): #选择的商品编号必须与列表编号一致
21             num = input('请输入你想购买的商品数量')
22             if num.isdigit():
23                 if int(money)>commodity[int(goods)]['price']*int(num):  #余额必须大于想购买商品的总价格才能购买
24                     money=int(money)-commodity[int(goods)]['price']*int(num)
25                     print('您已经将%s号商品%s加入到购物车,商品共%s件' % (goods, commodity[int(goods)]['name'], int(num)))
26                     print('结算需要【%s】RMB,余额为>>>%s'%(commodity[int(goods)]['price']*int(num),money))
27                 else:
28                     print('余额不够为%sRMB,少买点吧,屌丝'%money) #余额不足,不能购买
29                     change=input('是否需要充值后购买(Y/N)?')
30                     if change.isalpha() and change.upper()=='Y':   #判断是否需要充值
31                         add_money=input('请输入要充值金额')
32                         if add_money.isdigit():
33                             money=int(money)+int(add_money)       #完成充值则重新赋值给money
34                         else:
35                             print('就你皮,爱搞事情!')
36                     else:
37                         print('我靠,钱都不冲,你买个锤子!')
38                         break
39                 if commodity[int(goods)]['name'] in cart:    #判断选择的商品是否在购物车列表
40                     cart[commodity[int(goods)]['name']]=cart[commodity[int(goods)]['name']]+int(num) #在则更新商品数量
41                 else:
42                     cart[commodity[int(goods)]['name']]=int(num)  #不在则加入购物车列表
43 
44         else:
45             if goods.upper()!='Q':
46                 print('你不会看提示么,瞎几把输入')
47             else:
48                 break  #按Q退出
49 else:
50     print('余额不足,充钱去吧,小伙砸')
购物车列表

猜你喜欢

转载自www.cnblogs.com/wen-kang/p/9277248.html