題目:
要求一:假設你現在有200元要去超市購物,設超市里牙膏20元,沐浴露50元,洗發水30元,牙刷4元,毛巾10元,臉盆15元,
要求二:這200元現金可以不用完,也可以剛好用完,但不可以超支,
要求三:用戶購買結束后,顯示出用戶所購買的商品有哪些以及用戶余額,
要求四:當余額不足時提醒用戶無法購買,
下面,我們開始寫代碼
代碼一:
# 可供購買的商品
product_dict = {'牙膏': 20, '沐浴露': 50, '洗發水': 30, '牙刷': 4, '毛巾': 10, '臉盆': 15}
a = 200
purchase_list = [] # 創建空串列放已購買的商品
print(product_dict)
while True:
if a >= 0:
b = input('請輸入所購買的商品,或買完按Q結算:') # 一次只能選定一個商品
if b == 'Q':
print('所購買的商品為:', purchase_list, '余額:', a)
break
else:
a = a - product_dict[b]
purchase_list.append(b) # 這邊不加False是因為購買后還能再購買
print('購買成功,余額剩下:', a) # 所以不結束回圈
else:
print('余額不足,無法進行購買,請重新選擇!')
break
代碼二:
# 超市可供購買的商品
product_dict = {'牙膏': 20, '沐浴露': 50, '洗發水': 30, '牙刷': 4, '毛巾': 10, '臉盆': 15}
remain_money = 200 # 余額
product_info = [] # 空串列放已購買的清單明細
while remain_money >= 0:
# 每次購買一樣商品,每次購買都列印可供購買的商品product_dict,其實可以放回圈陳述句外面
print('可供購買的商品:', product_dict)
product_name = input('請輸入所購買的商品,或買完按Q結算:')
if product_name != 'Q':
product_info.append(product_name)
remain_money = remain_money - product_dict[product_name] # 余額
print('已購買的商品清單:', product_info)
print('余額:', remain_money)
else:
print('已購買的商品清單:', product_info)
print('余額:', remain_money)
break
以上兩個代碼塊都可以解決這道題目
下面我們來看看運行結果:

多次測驗,運行結果符合題目要求,
問題解決!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/292042.html
標籤:python
上一篇:爬蟲學習—疫情篇
下一篇:模擬登陸python程式
