完成一个商城购物车的程序.
完成一个商城购物车的程序。
要求:
1,用户先给自己的账户充钱:比如先充3000元。
2,有如下的一个格式:
goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},]
3,页面显示 序号 + 商品名称 + 商品价格,如:
1 电脑 1999
2 鼠标 10
…
4,用户输入选择的商品序号,然后打印商品名称及商品价格,并将此商品,添加到购物车(自己定义购物车),用户还可继续添加商品。
5,如果用户输入的商品序号有误,则提示输入有误,并重新输入。
6,用户输入N为购物车结算,依次显示用户购物车里面的商品,数量及单价,若充值的钱数不足,则让用户删除某商品,直至可以购买,若充值的钱数充足,则可以直接购买。
7,用户输入Q或者q退出程序。
8,退出程序之后,依次显示用户购买的商品,数量,单价,以及此次共消费多少钱,账户余额多少,并将购买信息显示。
goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},]
d = {"电脑":1999,"鼠标": 10,"游艇": 20,"美女" : 998}
w = 0
sum = 0
if w == 0:
while True:
w = w + int(input('请充值!输入你的充值金额(至少300rmb):'))
print(f'你现在的余额有{w}元')
if w >= 300:
break
dic = {}
while True:
for i in range(len(goods)):
k, v = goods[i]
print(i + 1, goods[i][k], goods[i][v])
p = input('请输入你想购买的商品序号,按N进行结算,按q或者Q退出购买,:')
if p.upper() == 'Q':
break
elif p == 'N':
for i in dic:
print(i,dic[i],d[i])
sum += d[i] * dic[i]
while w < sum:
print("""商品总价超出账户余额,请删除一些商品
""")
name = input('请输入删除商品的名称:')
n = input('请输入删除商品的个数:')
sum -= d[name] * int(n)
dic[name] = dic[name] - int(n)
else:
print('正在购买中...')
for i in dic:
print(f'用户购买的商品{i},数量{dic[i]},单价{d[i]}')
print(f'此次共消费{sum},账户余额{w - sum}')
break
elif int(p) == 1:
print('电脑',1999)
key1 = '电脑'
dic[key1] = dic.get(key1,0) + 1
elif int(p) == 2:
print('鼠标',10)
key2 = '鼠标'
dic[key2] = dic.get(key2, 0) + 1
elif int(p) == 3:
print('游艇',20)
key3 = '游艇'
dic[key3] = dic.get(key3, 0) + 1
elif int(p) == 4:
print('美女',998)
key4 = '美女'
dic[key4] = dic.get(key4, 0) + 1
else:
print('输入有误,请重新输入')

浙公网安备 33010602011771号