Converti file CSV in file JSON in Python
-
Converti file CSV in file JSON in Python utilizzando il metodo
json.dump()
in Python -
Converti file CSV in file JSON in Python utilizzando il metodo
Dataframe.to_json()
in Python
Questo tutorial mostrerà vari metodi per leggere i dati da un file CSV e salvarli come file JSON in Python. Nelle applicazioni Web, il formato utilizzato per salvare e trasferire i dati è il formato JSON. Supponiamo di avere dati salvati in formato CSV (Comma Separated Values
) e di doverli convertire in formato JSON.
Quindi, abbiamo bisogno di un metodo per convertire i dati in formato CSV in formato JSON. Possiamo convertire il file CSV in un file JSON in Python utilizzando i seguenti metodi.
Converti file CSV in file JSON in Python utilizzando il metodo json.dump()
in Python
Il metodo json.dump(obj, fp, indent=None, Seperator=None)
accetta i dati obj
come input e serializza obj
come flusso formattato JSON e lo scrive nell’oggetto simile a file fp
.
L’argomento della parola chiave indent
può essere utilizzato se vogliamo aggiungere il rientro ai dati per facilitarne la lettura. Per il valore dell’argomento indent
uguale a 0
, il metodo aggiunge una nuova riga dopo ogni valore e aggiunge il numero indent
di \t
all’inizio di ogni riga.
L’argomento separator
è uguale a (', ', ': ')
se l’argomento indent
è None
; altrimenti è uguale a (', ', ': ')
.
Il codice di esempio seguente mostra come utilizzare il metodo json.dump()
per salvare i dati come file JSON in 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)
Converti file CSV in file JSON in Python utilizzando il metodo Dataframe.to_json()
in Python
Il metodo Dataframe.to_json(path, orient)
del modulo Pandas
, prende DataFrame
e path
come input e lo converte in una stringa JSON, e lo salva nel path
fornito. Se non viene fornito alcun path
, il metodo restituisce la stringa JSON come output e non restituisce nulla se viene fornito il path
.
L’argomento orient
è utile per specificare come vogliamo che la nostra stringa JSON sia formattata, e ci sono varie opzioni sia per l’input Series
che DataFrame
.
Poiché il metodo Dataframe.to_json()
accetta un DataFrame
come input, useremo il metodo pandas.readcsv()
per leggere prima il file CSV come DataFrame
. Il codice di esempio seguente mostra come convertire un file CSV in un file JSON in Python utilizzando il metodo Dataframe.to_json()
.
import pandas as pd
csv_data = pd.read_csv("test.csv", sep=",")
csv_data.to_json("test.json", orient="records")
Articolo correlato - Python CSV
- Leggi CSV in array in Python
- Aggiungi una nuova riga a un file CSV in Python
- Converti CSV in dizionario in Python
- Da JSON a CSV in Python
- Leggi CSV in lista in Python