Задать вопрос
@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 можете подсказать пожалуйста, заранее спасибо:-)
  • Вопрос задан
  • 193 просмотра
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
dollar
@dollar
Делай добро и бросай его в воду.
Видно же, что response['weather'] - это массив, поэтому:
weather = response['weather'][0]['main']

TypeError: list indices must be integers

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

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

Похожие вопросы