Codecademy租车

时间:2013-09-06 03:07:42

标签: python if-statement

days = int(raw_input("How many days do you want to rent da car for?"))

def rental_car_cost(days):
     if days < 3:
         return days * 40
     if days >= 3 and days <= 7:
         return ((days * 40)-20)
     elif days > 7:
         return ((days*40) -50)


print rental_car_cost(days)

提前感谢您的帮助。我想要做的是让这个函数返回:

  1. 每天40日租用2天或以下的汽车的费用。
  2. 租车的费用为3至7天,折扣为20。
  3. 租车费用超过7天且折扣为50元。
  4. 然而,当我输入35天而不是1,350时,我没有。当我放入5天......我没有。想法?

2 个答案:

答案 0 :(得分:2)

我认为你的意思是:

if days >= 3 and days <= 7:

这是一种更简洁的写作方式:

if days <= 2:
    return (days * 40)
elif days <= 7:
    return (days * 40) - 20
else
    return (days * 40) - 50

答案 1 :(得分:2)

您想要将第二个if语句更改为if days >= 3 and days <=7。你现在所拥有的基本上是“小于或等于3天,大于或等于7天。”