练习题:自动贩卖机:只接受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, "矿泉水")

  

原文地址:https://www.cnblogs.com/xiamaojjie/p/14446724.html