that you spend as many days and nights is a bit weird and a bit weird.
But somewhere choices had to be made, i can think of many things which i would add to this code (handle for invalid city choice and so on)
usually the night is one shorter then the days (5 day holiday means you spend four nights), so you could simply do:
def trip_cost(city, days):
hotel_cost(days -1) + plane_ride_cost(city) + rental_car_cost(days)
to compensate for this, but i don't think the exercise will tolerate this. (but it is a nice addition for expanding the program outside the lesson