'''
购物车
功能要求:
要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},]
money = input()
shopping_car = [{name:电脑,count:3}]
1,展示商品
1, 电脑 1999
2, 鼠标 10
.....
1,输入的是全部数字
2,判断,范围。
购买成功,打印购买的商品列表
'''
goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
{"name":"手机","price":1000}]
shopping_cart=[]
consume=0
flag=True
balance=int(input('请输入您的余额>>'))
while flag:
print('商城商品及价格列表:'.center(50,'='))
for i in range(len(goods)):
print('{}.{} ¥{}'.format(i+1,goods[i]['name'],goods[i]['price']))
print(''.center(60,'='))
while True:
while True:
good_id = int(input('请输入你想购买的商品编号:'))
if good_id<=len(goods) and good_id>0:
break
else:
print('编号输入错误,请重新输入')
while True:
good_count = int(input('请输入你想购买的数量:'))
if good_count>0:
break
else:
print('购买数额必须为数字,且大于0')
shopping_cart.append({'商品':goods[good_id-1]['name'],'数量':good_count})
consume=consume+goods[good_id-1]['price']*good_count
if_continue=input('商品已加入购物车,继续购买y 任意键结算>>')
if if_continue=='y':
pass
else:
break
if consume<=balance:
balance2=balance-consume
print('购买成功,账户余额为¥{}'.format(balance2))
print('购物清单'.center(55,'='))
for j in range(len(shopping_cart)):
print('商品:{}/t数量:{}'.format(shopping_cart[j]['商品'],shopping_cart[j]['数量']))
print('总计:¥{}/t余额:¥{}'.format(consume,balance2))
print('==='.center(60,'='))
break
else:
if input('余额不足,重新购买y 任意键退出>>')=='y':
pass
else:
print('本次消费为0,余额为{}'.format(balance))
break
转载于:https://www.cnblogs.com/lixiaoxuan/articles/9034671.html