Salvar dicionário em JSON em Python

Muhammad Waiz Khan 30 janeiro 2023
  1. Salvar dicionário em JSON usando o método pickle.dump() em Python
  2. Salvar dicionário em JSON usando o método json.dump() em Python
Salvar dicionário em JSON em Python

Este tutorial explicará vários métodos para salvar um dicionário como um arquivo JSON em Python. O formato JSON é um formato de arquivo leve predominante; ele é usado principalmente para armazenar e transferir dados entre servidores e aplicativos da web. É um formato de arquivo independente do idioma completo e fácil de entender para um ser humano.

Salvar dicionário em JSON usando o método pickle.dump() em Python

O método dump(obj, file, ..) do módulo pickle grava o objeto de dados obj no objeto de arquivo aberto file. Para salvar o dicionário no formato JSON, precisaremos do objeto de arquivo do arquivo .json e do dicionário que precisamos para salvar e passá-los para o método dump().

Também podemos carregar o dicionário salvo do arquivo .json usando o método load() da biblioteca pickle. O método pickle.load(file, ..) lê o arquivo e retorna o objeto do tipo de dados usado para salvar os dados, como um dicionário, lista ou conjunto, etc.

O código de exemplo abaixo demonstra como salvar o dicionário como um arquivo JSON em Python usando o método dump():

import pickle

my_dict = {"Ali": 9, "Sid": 1, "Luna": 7, "Sim": 12, "Pooja": 4, "Jen": 2}
with open("data.json", "wb") as fp:
    pickle.dump(my_dict, fp)

with open("data.json", "rb") as fp:
    data = pickle.load(fp)
print(data)
print(type(data))

Resultado:

{'Ali': 9, 'Sid': 1, 'Luna': 7, 'Sim': 12, 'Pooja': 4, 'Jen': 2}
<class 'dict'>

Salvar dicionário em JSON usando o método json.dump() em Python

O método dump(obj, file, ..) do módulo json também grava o objeto de dados obj no objeto de arquivo aberto file. E o método load(file, ..) do módulo json também lê o arquivo e retorna o objeto do tipo de dados usando o qual os dados foram salvos. No nosso caso, será um dicionário.

Conforme explicado acima, para salvar o dicionário como um arquivo JSON, precisaremos do objeto de arquivo aberto do arquivo .json para salvar os dados do dicionário nele. Também é necessário carregar os dados do arquivo .json.

O exemplo de código abaixo demonstra como salvar e carregar o dicionário no arquivo JSON em Python usando os métodos json.dump() e json.load():

import json

my_dict = {"Ali": 9, "Sid": 1, "Luna": 7, "Sim": 12, "Pooja": 4, "Jen": 2}
with open("data.json", "w") as fp:
    json.dump(my_dict, fp)

with open("data.json", "r") as fp:
    data = json.load(fp)
print(data)
print(type(data))

Resultado:

{'Ali': 9, 'Sid': 1, 'Luna': 7, 'Sim': 12, 'Pooja': 4, 'Jen': 2}
<class 'dict'>
Nota
A principal diferença entre os métodos pickle e json, conforme mostrado no exemplo de código acima, é que os métodos pickle requerem objetos de arquivo em modo binário para ler e escrever, e os métodos json requerem objetos de arquivo em leitura simples e modo de gravação.

Artigo relacionado - Python Dictionary

Artigo relacionado - Python JSON