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
elif days >= 3 and days <= 7:
return ((days * 40)-20)
elif days > 7:
return ((days*40) -50)
print rental_car_cost(days)
我试图找出为什么代码在我使用7天时没有给出230。问题似乎在第3个if语句中。
答案 0 :(得分:1)
您的第二个if语句正在触发,因为您在其中使用&lt; =(小于或等于)
elif days >= 3 and days <= 7:
如果您希望最后一个触发将其更改为&lt; (小于)和底部的一个到> =(大于或等于)
elif days >= 3 and days < 7:
return ((days * 40)-20)
elif days >= 7: