Home > OS >  Looping through json.loads(response.text) with Python
Looping through json.loads(response.text) with Python

Time:11-16

i'm learning and would appreciate any help in this code.

The issue is trying to print the values in the data that are contained in one line of the JSON using Python.

import json
import requests

data = json.loads(response.text)

print(len(data)) #showing correct value

#where i'm going wrong below obviously this will print the first value then the second as it's indexed. Q how do I print all values when using seperate print statements when the total indexed value is unknown?

for item in data:
print(data[0]['full_name'])
print(data[1]['full_name'])

I tried without the index value this gave me the first value multiple times depending on the length.

I expect to be able to access from the JSON file each indexed value separately even though they are named the same thing "full_name" for example.

CodePudding user response:

import json
import requests

data = json.loads(response.text)

print(len(data)) #showing correct value

for item in data:
    print(item['full_name'])

    #the below code will throw error.. because python index starts with 0

    print(data[0]['full_name'])
    print(data[1]['full_name'])

hope this help

CodePudding user response:

Presuming data is a list of dictionaries, where each dictionary contains a full_name key:

for item in data:
    print(item['full_name'])

This code sample from your post makes no sense:

for item in data:
print(data[0]['full_name'])
print(data[1]['full_name'])

Firstly it's a syntax error because there is nothing indented underneath the loop.

Secondly it's a logic error, because the loop variable is item but then you never refer to that variable.

  • Related