python练习day6

#自动贩卖机:

#允许用户投币,但投币总数不能超过10块钱(币总只支持1元,5元,10元)。 如果10块以上,则直接退出贩卖机功能使用。

#贩卖机中饮料只有橙汁、椰汁、矿泉水、早餐奶,售价分别是3.5,4.2,4.5,2

#用户需要通过: 投钱和选择饮料,来使用贩卖机。

#如果饮料是没有的,则直接退出贩卖机功能使用。

#并通过判断之后,给用户吐出饮料和找零。

#请写函数实现贩卖机的功能。并调用此函数,调用时要用不同的数据来测试函数的功能是否正确实现。

# ps:不需要考虑重复投币。贩卖机只需要知道总的投币数量即可。

#一次只取一个饮料

def slot_machine():

total_money = input("自动贩卖机只支持投币1元,5元,10元,请按需投币:")

if total_money.isdigit():    #判断是否是数字

        if float(total_money) in (1.0,5.0,10.0):

print("""

*******************************

slot machine

橙汁:3.5元

                    椰汁:4.2元

                    矿泉水:4.5元

                    早餐奶:2元

                *******************************

""")

drink_info = {"橙汁": 3.5, "椰汁": 4.2, "矿泉水": 4.5, "早餐奶": 2}

drink = input("请选择需要购买的饮料:")

if total_money == "1":

print("投币金额不足,无法购买{}".format(drink))

return "取回所投金额:{}".format(total_money)

return

if drink in drink_info.keys():

change = round(float(total_money) - drink_info[drink],1)

return "吐零:{}".format(change), drink

else:

print("Sorry,所选饮料不存在,无法购买,我们后期会多加改进!")

return "取回所投金额:{}".format(total_money)

return

else:

print("投币不正确,请按提示投币!")

return "取回所投金额:{}".format(total_money)

return

else:

print("投币不正确,请按提示投币!")

return

print(slot_machine())

"""

测试数据:

1、s

2、1橙汁

3、2

4、5橙汁

5、10椰汁

6、5可乐

7、12

"""

你可能感兴趣的:(python练习day6)