需求:
"""自動販賣機:只接受1元、5元、10元的紙幣或硬幣可以1塊,5元, 10元。最多不超過10塊錢。
飲料只有橙汁、椰汁、礦泉水、早餐奶,售價分別是3.5 ,4, 2,4.5
寫—個函數用來表示販賣機的功能:用戶投錢和選擇飲料,並通過判斷之后,給用戶吐出飲料和找零。
"""
代碼如下:
"""自動販賣機:只接受1元、5元、10元的紙幣或硬幣可以1塊,5元, 10元。最多不超過10塊錢。 飲料只有橙汁、椰汁、礦泉水、早餐奶,售價分別是3.5 ,4, 2,4.5 寫—個函數用來表示販賣機的功能:用戶投錢和選擇飲料,並通過判斷之后,給用戶吐出飲料和找零。 """ def sell_goods(money, beverage): """ 自動販賣機 :param money: 金額 :param beverage: 飲料名稱 :return: """ # 商品信息字典 beverage_dict = { "橙汁": 3.5, "椰汁": 4, "礦泉水": 3, "早餐奶": 4.5 } # 接受紙幣數組 money_list = [1, 5, 10] if isinstance(money, int) and isinstance(beverage, str): if money in money_list and beverage_dict.get(beverage) is not None: if money > beverage_dict.get(beverage): print("吐出飲料{},找零{}元".format(beverage, (money - beverage_dict.get(beverage)))) else: print("所選商品價格大於投入金額") else: print("投入金額錯誤或選擇商品不存在") else: print("輸入類型錯誤") if __name__ == '__main__': sell_goods(5, "礦泉水")