[英]Python: How can I make that my funtion print once?
我有這個功能:
def encontrar(data_,departureAirportCode_,departureTime_,arrivalAirportCode_,arrivalTime_):
for i in range(len(data_flights)):
data=data_[i]["flights"]
for k in range(len(data)):
departureAirportCode=data[k]["departureAirportCode"]
departureTime=data[k]["departureTime"]
arrivalAirportCode=data[k]["arrivalAirportCode"]
arrivalTime=data[k]["arrivalTime"]
if departureAirportCode==departureAirportCode_ and departureTime==departureTime_ and arrivalAirportCode==arrivalAirportCode_ and arrivalTime==arrivalTime_:
code=data_[i]["flights"][k]["itinerary"][0]["flightCode"]
print(code)
else:
print("There is no flights on that date")
像這樣打印結果(一個interget):
encontrar(data_flights,"SCL","2022-01-11T15:40:00","PMC","2022-01-11T17:20:00")
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
401
There is no flights on that date
而是僅:401 提前感謝,我對 python 有點新手:) 提前感謝,我對 python 有點新手:)
您需要在 for 循環中使用 break 語句,如下所示:
def encontrar(data_,departureAirportCode_,departureTime_,arrivalAirportCode_,arrivalTime_):
for i in range(len(data_flights)):
data=data_[i]["flights"]
for k in range(len(data)):
departureAirportCode=data[k]["departureAirportCode"]
departureTime=data[k]["departureTime"]
arrivalAirportCode=data[k]["arrivalAirportCode"]
arrivalTime=data[k]["arrivalTime"]
if departureAirportCode==departureAirportCode_ and departureTime==departureTime_ and arrivalAirportCode==arrivalAirportCode_ and arrivalTime==arrivalTime_:
code=data_[i]["flights"][k]["itinerary"][0]["flightCode"]
print(code)
break
else:
print("There is no flights on that date")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.