Como ler e gravar em um arquivo JSON em Python
JavaScript Object Notation (JSON) é uma ferramenta de programação poderosa para trocar dados rapidamente em várias plataformas de programação. Esteja você armazenando dados ou criando uma API, converter seus dados em JSON os torna reutilizáveis e chamáveis, independentemente da tecnologia que os acessa.
Para promover uma comunicação eficaz entre Python e outras linguagens de programação, incluindo JavaScript, você pode fornecer seus dados como um objeto JSON.
Veja como ler e gravar em um arquivo JSON em Python.
Como gravar diretamente em um arquivo JSON
Há uma linha tênue entre um objeto JSON e um dicionário Python.
Portanto, é fácil armazenar um dicionário Python como JSON. Mas, para fazer isso funcionar, você precisa da biblioteca do analisador json .
Para começar, crie um arquivo JSON no diretório raiz do seu projeto.
Crie e abra um arquivo Python no mesmo diretório. Você pode então escrever um dicionário no arquivo JSON usando Python:
import json
data = {"MUO":"Media", "Google":"Search", "Python":"Language"}
with open("myfile.json", "w") as j:
json.dump(data, j)
Você também pode escrever uma matriz mais complexa em seu arquivo:
import json
data = {"Sites":[{"MUO":"Media", "Google":"Search", "Python":"Language"}]}
with open("myfile.json", "w") as j:
json.dump(data, j)
Como armazenar uma lista como JSON em Python
Você pode ter uma lista ou duas e deseja salvá-los como JSON. Uma boa prática é convertê-los em um dicionário antes de gravá-los em um arquivo JSON.
Existem muitas maneiras de converter uma lista em um dicionário Python .
O código de exemplo abaixo converte a lista em um dicionário antes de gravá-la em um objeto JSON:
import json
data = ["MUO", "Media", "Google", "Search", "Python", "Language"]
data = {data[i]:data[i+1] for i in range(0, len(data), 2)} #convert data into a dictionary
with open("myfile.json", "w") as j:
json.dump(data, j)
E se você quiser mesclar duas listas em uma antes de gravá-las em um arquivo JSON:
import json
data = ["MUO", "Google", "Python"]
data2 = ["Media", "Search", "Language"]
outputData = {data[i]:data2[i] for i in range(len(data))} #merge the two lists into a dictionary
with open("myfile.json", "w") as j:
json.dump(outputData, j)
Acessando Seus Dados JSON
É fácil acessar e consultar seus dados de um arquivo JSON usando Python:
import json
with open("test.json", "r") as j:
mydata = json.load(j)
print(mydata)
Output: {'MUO': 'Media', 'Google': 'Search', 'Python': 'Language'}
E se você deseja obter dados específicos de seu arquivo JSON:
with open("test.json", "r") as j:
mydata = json.load(j)
print(mydata["MUO"])
Output: Media
Consultar mais rápido em Python com JSON
Além de ser multiplataforma, os objetos JSON são leves e podem melhorar a velocidade de resposta durante as consultas. E, como você viu, disponibilizar saídas como objetos JSON em Python é simples.
No entanto, pode haver algumas diferenças entre os exemplos aqui e a implementação real em um projeto da vida real. Este é o conhecimento básico de que você precisa para começar. Felizmente, você pode até usar um banco de dados NoSQL como CouchDB com Python para armazenar entradas diretamente como JSON.