2016-06-22 229 views
0
def hotel_cost(days): 
    return days*140 

def plane_ride_cost(n): 
    if n == "Charlotte": 
     return 183 
    elif n == "Tampa": 
     return 220 
    elif n == "Pittsburgh": 
     return 222 
    elif n == "Los Angeles": 
     return 475 

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

def trip_cost(city,days): 
    return rental_car_cost(days)+ plane_ride_cost(n)+hotel_cost(days) 

I输入上面的代码,并获得各种错误,其中之一是:无法解决码错误

trip_cost('Tampa', 5) raised an error: global name 'n' is not defined 
+0

@Sayse通过编辑关于Code Academy的部分,您已经弄清楚错误的“糟糕,再试一次”部分来自哪里。 –

+0

@JonathonReinhart - 在这种情况下,应该删除“糟糕,再试一次”。 – Sayse

+0

@Sayse你让事情变得更糟。这不是标准的Python异常消息。 –

回答

2

该错误是从该行提出:

return rental_car_cost(days)+ plane_ride_cost(n)+hotel_cost(days)

您正在调用功能plane_ride_cost,其中变量n未在范围中定义。

1

trip_cost,你打电话

plane_ride_cost(n) 

n是没有定义。你的意思是city

+0

比'天'更像'城市' – Dschoni

+0

@Dschoni当然,谢谢。编辑。 –