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