Я использую API, чтобы вытащить этот список.
Мне нужно, чтобы пользователь мог ввести имя авиакомпании. Затем, как только имя захвачено, сопоставьте имя с кодом «icao» в том же словаре.
Мой код
import requests
api-url= ("https://api.url")
class airlinenames(Component):
def start(self):
name = "Ali Airlines"
url = API_URL
data = requests.get(url).json()
icao = data['airlines'][0]['icao']
text = ( "this is your airline: {name} and this is the icao code: {icao}"
).format(
name=name,
icao=icao
)
message = self.create_message(text=text)
return self.respond(message=message, action="next"
Моя проблема в том, что вместо того, чтобы вытягивать совпадающее «icao» из того же словаря, оно вытягивает самый следующий в верхней части.
Так, например, если пользователь входит в "Али-Эйрлайнз"
На нем должно быть написано «Это ваша авиакомпания: Али Эйрлайн, ваш код ИКАО: ALI
Пример списка:
{
"airlines": [
{
"fs": "BS",
"iata": "BS",
"icao": "ALI",
"name": "Ali Airlines",
"active": true
},
{
"fs": "BS*",
"iata": "BS",
"icao": "BAL",
"name": "Bali Airline",
"active": true
},
{
"fs": "BSK",
"iata": "LL",
"icao": "GAL",
"name": "Gali airline",
"active": true
}
]
}