''' 购物车 功能要求: 要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品,加入购物车 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。 goods = [{"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ] '''
goods = [{"name": "电脑","price": 2000}, {"name": "鼠标","price": 10}, {"name": "游艇","price": 20}, {"name": "美女","price": 1000}, ] j = 1 shopping_car = [] count = 0 total_price = 0 Flag = True while True: money = (input("你要充值多少钱:")).strip() if money.isdigit(): money = int(money) break else: print("请输入数字") continue while Flag: print('序号 待售商品 单价:') for i in goods: print(j,i['name'],i['price']) j += 1 j = 1 choice = (input('请输入你想购买的商品序号,输入C/c清空购物车,输入Y/y确认下单,输入Q/q退出购物车:')) if choice == 'Y' or choice == 'y': print('确认购买商品:',shopping_car) print('你的账户余额为:',money - total_price) Flag = False elif choice == 'C' or choice == 'c': shopping_car.clear() total_price = 0 print('购物车已清空,请重新添加商品') print(' ') # continue elif choice == 'Q' or choice == 'q': break elif choice.isdigit(): if 1 <= int(choice) <= len(goods): cot = int(input('请输入购买数量: ').strip()) choice = int(choice) shopping_car.append({'name':goods[choice-1]['name'],'count':cot}) ## 将所选商品及数量添加到购物车 # j = 1 total_price += goods[choice-1]['price'] * cot print('商品总价: ',total_price) if money < total_price: print('金额不足,无法添加') print(' ') shopping_car.remove({'name':goods[choice-1]['name'],'count':cot}) total_price -= goods[choice - 1]['price'] * cot else: print('购物车已添加',shopping_car) print('-----------------------------------') print(' ') else: print('请按提示输入:')