练习题:⾃动贩卖机:只接受1元、5元、10元的纸币或硬币可
以1块,5元,10元。
需求:
\"\"\"⾃动贩卖机:只接受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, \"矿泉⽔\")