Como atualizar e editar dados de arquivos JSON com Python: Guia Completo

JSON (JavaScript Object Notation) é amplamente utilizado como um formato de troca de dados. Devido à sua leveza e alta legibilidade, é usado em várias situações, como respostas de APIs web e arquivos de configuração. Neste artigo, explicaremos detalhadamente como carregar, atualizar e editar arquivos JSON de forma eficiente usando Python, com exemplos de código específicos. Isso permitirá que até iniciantes em Python possam manipular arquivos JSON facilmente.

Índice

O que é um arquivo JSON?

O arquivo JSON é uma abreviação de JavaScript Object Notation, um formato leve e de fácil leitura para a troca de dados. Ele representa objetos compostos por pares de chave e valor, ou listas de valores organizadas em arrays. JSON é independente de linguagem e é amplamente utilizado para armazenamento e transferência de dados, pois é suportado por muitas linguagens de programação.

Como carregar arquivos JSON com Python

No Python, é fácil carregar arquivos JSON usando o módulo json da biblioteca padrão. Abaixo, apresentamos os passos básicos e um exemplo de código.

Importando o módulo JSON

Primeiramente, importe o módulo json. Como ele faz parte da biblioteca padrão, não é necessário instalar nada adicional.

import json

Carregando o arquivo JSON

Em seguida, carregue o arquivo JSON. No exemplo a seguir, o arquivo data.json é carregado e seu conteúdo é obtido como um objeto do tipo dicionário do Python.

with open('data.json', 'r') as file:  
    data = json.load(file)  
print(data)

No código acima, a função open é usada para abrir o arquivo, e a função json.load carrega os dados JSON. Os dados carregados podem ser manipulados como um dicionário do Python.

Como atualizar os dados de um arquivo JSON

No Python, é fácil atualizar os dados carregados de um arquivo JSON. Abaixo, apresentamos os passos e exemplos de código específicos.

Atualizando dados JSON

Os dados JSON carregados são manipulados como um objeto do tipo dicionário. Para atualizar esses dados, utilize operações normais de dicionário. Por exemplo, para alterar o valor de uma chave específica, faça o seguinte:

# Atualizando dados existentes  
data['name'] = 'Novo Nome'

Salvando os dados atualizados

Para salvar os dados atualizados no arquivo JSON original, use a função json.dump. No exemplo a seguir, os dados atualizados são sobrescritos no arquivo data.json.

with open('data.json', 'w') as file:  
    json.dump(data, file, indent=4)

No código acima, a função open é usada para abrir o arquivo, e a função json.dump escreve os dados atualizados no arquivo. O parâmetro indent define a indentação dos dados salvos, melhorando a legibilidade do JSON.

Como adicionar novos dados a um arquivo JSON

Também é fácil adicionar novos dados a um arquivo JSON existente no Python. Abaixo, apresentamos os passos específicos e exemplos de código.

Adicionando novos dados

Como os dados JSON são manipulados como um objeto do tipo dicionário, basta adicionar uma nova entrada ao dicionário. No exemplo abaixo, uma nova chave age e seu valor são adicionados.

# Adicionando novos dados  
data['age'] = 30

Salvando os dados adicionados

Após adicionar os novos dados, salve as alterações no arquivo JSON. A forma de salvar é a mesma utilizada para atualizações. No exemplo abaixo, os novos dados são adicionados e salvos no arquivo data.json.

with open('data.json', 'w') as file:  
    json.dump(data, file, indent=4)

Dessa forma, é possível adicionar novos dados ao arquivo JSON existente e salvá-los.

Como remover dados de um arquivo JSON

No Python, você pode remover dados desnecessários de um arquivo JSON manipulando o objeto do tipo dicionário. Abaixo, apresentamos os passos e exemplos de código.

Removendo dados

Para remover uma chave específica e seu valor do JSON, use a instrução del do Python. No exemplo abaixo, a chave age é removida.

# Removendo uma chave específica  
del data['age']

Salvando os dados após a remoção

Depois de remover os dados, salve as alterações no arquivo JSON. O método de salvamento é o mesmo usado para atualizações e adições. No exemplo abaixo, os dados são salvos no arquivo data.json após a remoção.

with open('data.json', 'w') as file:  
    json.dump(data, file, indent=4)

Dessa forma, é possível remover dados indesejados de um arquivo JSON e salvá-los.

Salvamento e codificação de arquivos JSON

Ao salvar dados JSON que foram atualizados ou editados, é importante configurar a codificação adequadamente. Abaixo, explicamos como salvar arquivos JSON e configurá-los com a codificação apropriada.

Salvando dados JSON

No Python, use a função json.dump para salvar dados JSON atualizados ou editados em um arquivo. Abra o arquivo no modo de escrita e salve os dados atualizados.

with open('data.json', 'w', encoding='utf-8') as file:  
    json.dump(data, file, indent=4, ensure_ascii=False)

Aqui, ao especificar encoding='utf-8', o arquivo será salvo com codificação UTF-8. Além disso, ao definir ensure_ascii=False, caracteres não ASCII serão preservados, permitindo salvar corretamente caracteres japoneses e outros caracteres especiais.

Importância da codificação

A configuração de codificação é particularmente importante em aplicações internacionais. Usar a codificação UTF-8 garante suporte a uma ampla gama de caracteres e compatibilidade de dados.

Exemplo prático: manipulando vários arquivos JSON

Ao manipular vários arquivos JSON com Python, é necessário realizar uma série de operações, como carregar cada arquivo, integrar os dados, atualizar e salvar. Abaixo, apresentamos os passos específicos e exemplos de código.

Carregando vários arquivos

Primeiro, carregue vários arquivos JSON. No exemplo a seguir, dois arquivos, data1.json e data2.json, são carregados e seus dados são obtidos.

import json  

# Carregando os arquivos  
with open('data1.json', 'r') as file1, open('data2.json', 'r') as file2:  
    data1 = json.load(file1)  
    data2 = json.load(file2)

Integrando os dados

A seguir, mostramos como integrar os dados carregados. No exemplo abaixo, os dois dicionários são mesclados.

# Integrando os dados  
merged_data = {**data1, **data2}

Se houver chaves duplicadas, os valores de data2 serão priorizados.

Atualizando e salvando os dados integrados

Atualize e salve os dados integrados. No exemplo abaixo, um novo item é adicionado aos dados integrados e eles são salvos no arquivo merged_data.json.

# Atualizando os dados  
merged_data['new_key'] = 'Novo Valor'  

# Salvando os dados integrados  
with open('merged_data.json', 'w', encoding='utf-8') as file:  
    json.dump(merged_data, file, indent=4, ensure_ascii=False)

Dessa forma, é possível manipular múltiplos arquivos JSON, integrar os dados e salvá-los.

Exercícios

Aqui, fornecemos exercícios para ajudar os leitores a adquirir habilidades na manipulação de arquivos JSON com Python. Esses exercícios permitem a compreensão prática do conteúdo aprendido.

Exercício 1: Carregando um arquivo JSON

Carregue o arquivo example.json abaixo e exiba seu conteúdo.

{  
    "name": "Alice",  
    "age": 25,  
    "city": "Tokyo"  
}

Exercício 2: Atualizando os dados

Atualize o valor de age para 30 nos dados carregados no Exercício 1 e exiba o conteúdo atualizado.

Exercício 3: Adicionando novos dados

Adicione uma nova chave email com o valor alice@example.com aos dados atualizados no Exercício 2 e exiba o conteúdo atualizado.

Exercício 4: Removendo dados

Remova a chave email e seu valor dos dados atualizados no Exercício 3 e exiba o conteúdo após a remoção.

Exercício 5: Integração de múltiplos arquivos

Carregue os dois arquivos JSON abaixo, integre os dados e exiba o resultado.

// file1.json  
{  
    "name": "Alice",  
    "age": 25  
}  

// file2.json  
{  
    "city": "Tokyo",  
    "country": "Japan"  
}

Adicione uma nova chave phone com o valor 123-456-7890 aos dados integrados e salve o resultado em um novo arquivo merged.json.

Esses exercícios ajudam a garantir que você adquira uma base sólida na manipulação de arquivos JSON com Python.

Conclusão

Explicamos detalhadamente como manipular arquivos JSON com Python. Aprendemos sobre a estrutura básica dos arquivos JSON, como carregá-los, atualizar, adicionar e remover dados, e como integrar múltiplos arquivos. Além disso, os exercícios fornecidos permitiram a prática dos conhecimentos adquiridos. Utilize essas habilidades para tarefas de processamento de dados, integração com APIs e outras situações práticas. Continue explorando as poderosas bibliotecas do Python para alcançar uma programação eficiente.

Índice