Convertir un fichier CSV en fichier JSON en Python

  1. Convertir un fichier CSV en fichier JSON en Python en utilisant la méthode json.dump() en Python
  2. Convertir un fichier CSV en fichier JSON en Python en utilisant la méthode Dataframe.to_json() en Python

Ce didacticiel présentera différentes méthodes pour lire des données à partir d’un fichier CSV et les enregistrer en tant que fichier JSON en Python. Dans les applications Web, le format utilisé pour enregistrer et transférer des données est le format JSON. Supposons que nous ayons des données enregistrées au format CSV (Comma Separated Values) et que nous devions les convertir au format JSON.

Nous avons donc besoin d’une méthode pour convertir les données au format CSV au format JSON. Nous pouvons convertir le fichier CSV en fichier JSON en Python en utilisant les méthodes suivantes.

Convertir un fichier CSV en fichier JSON en Python en utilisant la méthode json.dump() en Python

La méthode json.dump(obj, fp, indent=None, Seperator=None) prend les données obj comme entrée et sérialise obj en tant que flux au format JSON, et les écrit dans l’objet de type fichier fp .

L’argument mot-clé indent peut être utilisé si l’on veut ajouter l’indentation aux données pour en faciliter la lecture. Pour une valeur d’argument indent égale à 0, la méthode ajoute une nouvelle ligne après chaque valeur et ajoute le nombre indent de \t au début de chaque ligne.

L’argument séparateur est égal à (', ', ': ') si l’argument indent est None; sinon, il est égal à (', ', ': ').

L’exemple de code ci-dessous montre comment utiliser la méthode json.dump() pour enregistrer les données sous forme de fichier JSON en Python.

with open('file.csv', 'r') as file_csv:
    fieldnames = ("field1","field2")
    reader = csv.DictReader(file_csv, fieldnames)
    
with open('myfile.json', 'w') as file_json:
    for row in reader:
            json.dump(row, file_json)    

Convertir un fichier CSV en fichier JSON en Python en utilisant la méthode Dataframe.to_json() en Python

La méthode Dataframe.to_json(path, orient) du module Pandas, prend Dataframe et path en entrée et le convertit en une chaîne JSON, et l’enregistre dans le path fourni. Si aucun path n’est fourni, la méthode renvoie la chaîne JSON en sortie et ne retourne rien si le path est fourni.

L’argument orient est utile pour spécifier comment nous voulons que notre chaîne JSON soit formatée, et il existe différentes options pour les entrées Series et Dataframe.

Puisque la méthode Dataframe.to_json() prend un Dataframe en entrée, nous utiliserons la méthode pandas.readcsv() pour lire d’abord le fichier CSV comme Dataframe. L’exemple de code ci-dessous montre comment convertir un fichier CSV en fichier JSON en Python en utilisant la méthode Dataframe.to_json().

import pandas as pd
csv_data = pd.read_csv("test.csv", sep = ",")
csv_data.to_json("test.json", orient = "records")

Article connexe - Python CSV

  • Comment lire le CSV pour lister en Python
  • JSON en CSV en Python
  • Article connexe - Python JSON

  • Itérer à travers un objet Json en Python
  • Ecrire un dictionnaire en CSV en Python