我是python新手,遇到了我的代码中存在的问题。在下面的这段代码中,我试图打印出航班号,目的地,出发时间和到达时间的列表,但我也试图在两个机场代码之间进行过滤:始发机场和目的地机场。
我遇到了一个不知道如何在两个代码之间进行过滤的问题。如果我要怎么做,有办法在python中做吗?
def flights_from():
# list of flights for the flights.
# list of airport nodes
# list of flight numbers, destination, departure and arrival times
flights = load_flights('flights_01_01.csv')
for flight in flights:
print(
flight.getOriginairport(),
flight.getDestinationairport(),
flight.getFlightnumber(),
flight.getFlightnumber(),
flight.getScheduleddeparture(),
flight.getScheduledarrival()
)
# here is where I am stuck. Trying to filter between two airport codes.
flights_from()
例如,for循环的输出为
始发机场,目的地机场,航班号,目的地,出发和到达时间
SFO, CLT, 840, 840, 20, 806
我还试图在两个机场代码之间进行过滤:始发机场和目的地机场。
如果只想根据匹配的出发地和目的地来过滤列表,则可以这样进行:
def filter_flights(origin, destination):
flights = load_flights('flights_01_01.csv')
matching_flights = []
for flight in flights:
if (
flight.getOriginairport() == origin
and flight.getDestinationairport() == destination
):
matching_flights.append(flight)
return matching_flights
您还可以通过列表理解来做到这一点:
def filter_flights(origin, destination):
return [
flight
for flight in load_flights('flights_01_01.csv')
if flight.getOriginairport() == origin
and flight.getDestinationairport() == destination
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句