Pull it Together


#1

https://www.codecademy.com/en/courses/python-beginner-P5YtY/1/4?curriculum_id=4f89dab3d788890003000096

I get the error message: Oops, try again. trip_cost('Charlotte', 9) raised an error: unsupported operand type(s) for +: 'int' and 'NoneType'

I don't know if this is a mistake or if it's supposed to happen.

def hotel_cost(nights):
    return 140 * nights
    
def plane_ride_cost(city):
    if city == "Charlotte":
        return 183
    elif city == "Tampa":
        return 220
    elif city == "Pittsburgh":
        return 222
    elif city == "Los Angeles":
        return 475
        
def rental_car_cost(days):
    cost = 40 * days
    if days >= 7:
        return cost - 50
    elif days >= 3:
        return cost - 20
    return cost
    
def trip_cost(city, days):
    return rental_car_cost(days) + hotel_cost(days) + plane_ride_cost(days)

#2

The argument should be city for this call.


#3

You have passed days to the plane_ride_cost function ...

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

#4

Ok thanks! I saw on a lot other post people were passing nights to the hotel_cost function, and must have accidentally switched plane_ride_cost.


#5

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.