用Python实现下列问题: 购物车程序开发 根据以下数据结构: 1. goods =[ 2. {"name":"电脑","price":1999}, 3. {"name":"鼠标","price":10}, 4. {"name":"键盘","price":20}, 5. {"name":"音响","price":998}, 7. ] 实现功能要求: 1、启动程序后,让用户输入工资,然后进入循环,打印商品列表和编号 2、允许用户根据商品编号选择商品 3、用户选择商品后,检测余额是否够,够就直接扣款,并加入购物车, 不够就提醒余额不足 4、可随时退出,退出时,打印已购买商品和余额
时间: 2023-07-05 11:27:58 浏览: 107
好的,下面是代码实现:
```python
goods = [
{"name":"电脑","price":1999},
{"name":"鼠标","price":10},
{"name":"键盘","price":20},
{"name":"音响","price":998},
]
money = int(input("请输入你的工资:"))
cart = []
while True:
print("商品列表:")
for i, good in enumerate(goods):
print(i+1, good["name"], good["price"])
choice = input("请输入商品编号,退出请输入q:")
if choice == "q":
break
elif choice.isdigit() and 0 < int(choice) <= len(goods):
good = goods[int(choice)-1]
if money >= good["price"]:
cart.append(good)
money -= good["price"]
print("已成功添加 %s 到购物车,余额为 %d" % (good["name"], money))
else:
print("余额不足,请选择其他商品或退出购物!")
else:
print("输入有误,请重新输入!")
print("已购买商品:")
for good in cart:
print(good["name"], good["price"])
print("余额为:", money)
```
请注意,本代码是一个基本实现,还有许多需要优化的地方,比如输入判断可以更加严格,输出可以更加友好,购物车可以做成类等等。
阅读全文