Цикл над JSON в Python?

#python #json

#python #json

Вопрос:

У меня есть ответ JSON, который я пытаюсь перебрать. Ответ JSON выглядит следующим образом:-

 req = requests.get("http://url")
     print(req.json())

{
'responseHeader': {'status': 0, 'QTime': 0}, 
'collections': 
['testing1', 'testing2', 'facebook', 'google', 'IG', 'reddit']
}
  

Я пытаюсь вывести имена коллекций :-

Итак, я попробовал это,

 for x in req['collections']:
         print(x); 
  

Но я получаю TypeError: 'Response' object is not subscriptable

Я новичок в Python, поэтому буду признателен за любую помощь. Спасибо.

Комментарии:

1. req['collections'] => req.json()['collections']

Ответ №1:

Проанализированный объект json доступен из .json() метода объекта ответа. Вам нужно посмотреть на collections ключ в этом dict, а не в объекте ответа.

Изменить for x in req['collections'] на for x in req.json()['collections']

Ответ №2:

Не индексируя правильное значение, измените свой код на следующий

 req = requests.get("http://url").json()

for x in req['collections']:
         print(x) 
  

Ответ №3:

вам нужно, чтобы это было req.json()['collections']