@treketerer

Как избежать ошибки при парсинге Json файла?

Я изучаю api сервиса OpenWeatherMap, и когда получаю Json ответ от сервиса забираю данные, начал писать код, и почему-то на одном моменте вылазит ошибка, не пойму почему, уже сверху есть почти идентичные строки и они работают нормально. Вот виновник:
weather = response['weather']['main']
А эта строка находится чуть выше и работает нормально:
wind = response['wind']['speed']
Вот кусок Json-а:
{'coord': {'lon': 37.4711, 'lat': 55.1431}, 'weather': [{'id': 601, 'main': 'Snow', 'description': 'snow', 'icon': '13d'}]...

А вот ошибка:
TypeError: list indices must be integers or slices, not str

Подскажите почему не работает, думаю ответ очень простой, но я не допонимаю, и если есть более лучший способ парсить Json можете подсказать пожалуйста, заранее спасибо:-)
  • Вопрос задан
  • 189 просмотров
Решения вопроса 1
dollar
@dollar
Делай добро и бросай его в воду.
Видно же, что response['weather'] - это массив, поэтому:
weather = response['weather'][0]['main']

TypeError: list indices must be integers

Логично, речь про индексы массива, они могут быть только числовые.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы