Converter JSON em dicionário em Python
JSON é JavaScript Object Notation e é usado para armazenar e transferir dados. A linguagem de programação Python suporta JSON por meio de um pacote de biblioteca integrado chamado json
. Seu formato é muito semelhante a um dicionário ou lista em Python.
Neste tutorial, converteremos uma string JSON em um dicionário em Python.
A função json.load()
é usada para analisar a string JSON. O tipo final retornado por esta função depende do tipo de dados JSON que está lendo. Sempre que um colchete é encontrado, ele lê os dados como uma lista. Quando uma chave é encontrada, o tipo final está em um dicionário.
Veja o código abaixo.
import json
j_data = """
{
"0":{
"Name": "Nick",
"Age": "22"
},
"1":{
"Name": "Hemank",
"Age": "21"
},
"2":{
"Name": "Sam",
"Age":"25"
}
}
"""
d = json.loads(j_data)
print(d)
print(d["0"]["Name"])
print(d["1"]["Age"])
Produção:
{'0': {'Name': 'Nick', 'Age': '22'}, '1': {'Name': 'Hemank', 'Age': '21'}, '2': {'Name': 'Sam', 'Age': '25'}}
Nick
21
Observe o formato dos dados JSON no exemplo acima. Ele está entre chaves. É por isso que o resultado final está na forma de dicionário. Também usamos as chaves para percorrer o dicionário e acessar valores individuais.
No entanto, se os dados estiverem entre colchetes, a função json.loads()
lerá os dados em uma lista. Podemos selecionar o elemento do dicionário da lista.
Por exemplo,
import json
j_data = """
[{
"0":{
"Name": "Nick",
"Age": "22"
},
"1":{
"Name": "Hemank",
"Age": "21"
},
"2":{
"Name": "Sam",
"Age":"25"
}
}
]
"""
d = json.loads(j_data)
print(d[0])
Produção:
{'0': {'Name': 'Nick', 'Age': '22'}, '1': {'Name': 'Hemank', 'Age': '21'}, '2': {'Name': 'Sam', 'Age': '25'}}
Observe a ligeira mudança nos dados JSON. O tipo final é uma lista. É por isso que extraímos o primeiro elemento, que é um dicionário. Da mesma forma, podemos usar as chaves individuais para percorrer o dicionário e acessar diferentes valores.
Artigo relacionado - Python JSON
- Obter JSON de URL em Python
- Como imprimir um ficheiro JSON em Python
- POSTAR dados JSON com requests em Python
- Escreva JSON em um arquivo em Python
- Converter arquivo CSV em arquivo JSON em Python