功能要求:
要求使用者輸入總資產,例如:2000
顯示商品列表,讓使用者根據序號選擇商品,加入購物車購買
如果商品總額大於總資產,提示賬戶餘額不足,否則,購買成功
goods = [{"name":"電腦","price":1999},
{"name":"滑鼠","price":10},
{"name":"遊艇","price":20},
{"name":"美女","price":998},]
代碼如下:
# -*-coding:utf-8-*-
# 商品列表
goods = [{"ID": "1", "name": "電腦", "price": 1999},
{"ID": "2", "name": "滑鼠", "price": 10},
{"ID": "3", "name": "遊艇", "price": 20},
{"ID": "4", "name": "美女", "price": 998}, ]
# 定義購物車
goods_car = []
# 定義總資產
money = input("請輸入您的總資產:")
# 使用者輸入總資產
while not money.isdigit():
print("僅允許輸入數字")
money = input("請輸入您的總資產:")
else:
user_amount = int(money)
while True:
print("商品列表".center(30, "="))
for i in goods:
print(i['ID'], i['name'], i['price'])
choose = input("請輸入您要購買的商品編號,按q退出:")
if choose == 'q':
break
if choose.isdigit():
goods_num = int(choose)
# 判斷輸入編號是否在列表中
if 0 < goods_num <= len(goods):
# 擷取連接埠列表中選擇的商品
buy_goods = goods[goods_num - 1]
# 判斷商品金額是否大於使用者的資產
goods_price = buy_goods['price']
if user_amount < goods_price:
print("賬戶餘額不足。不能購買該商品")
else:
# 將使用者購買成功的商品加入到購物車中
goods_car.append(buy_goods)
user_amount -= goods_price
# print("購買成功,商品是:%s" % goods_car)
for my_goods in goods_car:
print("購買成功,商品是:", my_goods['name'], my_goods['price'])
print("預算還有%d" % user_amount)
else:
print("輸入的商品編號有誤。請重新輸入:")
else:
print("僅允許輸入數字")
運行結果如下:
請輸入您的總資產:200
=============商品列表=============
1 電腦 1999
2 滑鼠 10
3 遊艇 20
4 美女 998
請輸入您要購買的商品編號,按q退出:5
輸入的商品編號有誤。請重新輸入:
=============商品列表=============
1 電腦 1999
2 滑鼠 10
3 遊艇 20
4 美女 998
請輸入您要購買的商品編號,按q退出:1
賬戶餘額不足。不能購買該商品
=============商品列表=============
1 電腦 1999
2 滑鼠 10
3 遊艇 20
4 美女 998
請輸入您要購買的商品編號,按q退出:2
購買成功,商品是: 滑鼠 10
預算還有190
=============商品列表=============
1 電腦 1999
2 滑鼠 10
3 遊艇 20
4 美女 998
請輸入您要購買的商品編號,按q退出:2
購買成功,商品是: 滑鼠 10
購買成功,商品是: 滑鼠 10
預算還有180
=============商品列表=============
1 電腦 1999
2 滑鼠 10
3 遊艇 20
4 美女 998
請輸入您要購買的商品編號,按q退出: