JSON (JavaScript Object Notation) è un formato di file popolare per presentare i dati strutturati e trasferire i dati tra il server e l’applicazione facilmente. La struttura di questo file è simile ad alcuni oggetti Python come lista, tupla e dizionario. È possibile convertire qualsiasi oggetto dizionario nell’oggetto JSON utilizzando i metodi dump() e dump() del modulo json. Questo articolo mostra i modi per convertire qualsiasi oggetto dizionario nell’oggetto JSON in python.
json.metodo dump ():
Questo metodo viene utilizzato per convertire l’oggetto dizionario in dati JSON per l’analisi o la lettura ed è più lento del metodo dump ().
Sintassi:
Questo metodo ha molti argomenti opzionali. Gli usi di un argomento obbligatorio e due opzionali sono mostrati in questo articolo. Qui, il primo argomento è un argomento obbligatorio che viene utilizzato per prendere qualsiasi oggetto dizionario, il secondo argomento viene utilizzato per definire il numero di unità per il rientro e il terzo argomento viene utilizzato per ordinare le chiavi.
json.metodo dump ():
Questo metodo viene utilizzato per memorizzare l’oggetto Python in un file JSON. È più veloce del metodo dump () perché scrive separatamente nella memoria e nel file.
Sintassi:
Questo metodo ha molti argomenti come dump (). Gli usi di tre argomenti sono utilizzati in questo articolo per convertire i dati di un oggetto dizionario in dati JSON e memorizzare i dati in un file JSON. Qui, il primo argomento viene utilizzato per prendere un oggetto dizionario che deve essere convertito in un oggetto JSON, e il secondo argomento viene utilizzato per prendere il nome del gestore di file del file in cui verranno scritti i dati JSON. Il terzo argomento viene utilizzato per impostare l’unità di rientro.
Come questi due metodi possono essere utilizzati per convertire l’oggetto dizionario in un file JSON o una stringa JSON sono mostrati di seguito di questo articolo.
Esempio-1: Converti dizionario in JSON usando dump() con indentazione
È menzionato prima che il metodo dump () ha un parametro obbligatorio e può prendere l’oggetto dictionary per convertire i dati in stringa JSON. Nel seguente script, dict_data è una variabile dizionario che contiene i dati di un particolare record studente. All’inizio, il metodo dumps() viene utilizzato con un argomento e il valore di dict_data viene convertito in dati JSON. L’output sia del dizionario che del formato JSON è lo stesso se non viene utilizzato alcun rientro nei dati JSON. Successivamente, il metodo dump() viene utilizzato con due argomenti e 3 viene utilizzato come valore di indentazione per i dati JSON. Il secondo output JSON verrà generato con indentazione.
# Import json modulo
importa json
# Define un dizionario
dict_data = { “student_id”: “011894”, “nome”: “Matteo”, “batch”: 30, “semestre”:6 }
# Stampa dei dati del dizionario
print(“Dictonary di Uscita: \n”, dict_data, “\n”)
# la Conversione dizionario in oggetto json senza indentazione
json_data = json.dump (dict_data)
# stampa dati json
stampa(“Output JSON senza indentazione: \n”,json_data, “\n”)
# Converti dizionario in oggetto json con indentazione
json_data = json.dump(dict_data, indent = 3)
# stampa dati json con indentazione
stampa(“Output JSON con indentazione: \n”, json_data)
Output:
Dopo l’esecuzione dello script verrà visualizzato il seguente output.
Esempio-2: Converti il dizionario in JSON usando dump () con sort_keys
Le chiavi dei dati JSON possono essere ordinate usando l’argomento sort_keys di dump(). Il valore predefinito di questo argomento è False. Nel seguente script, l’oggetto dizionario viene convertito in dati JSON senza utilizzare sort_keys e utilizzando sort_keys per visualizzare l’uso di questo argomento. Il primo metodo dump () viene utilizzato con il valore di rientro 5 e l’output mostra i dati JSON utilizzando il rientro 5. Nel secondo metodo dumps (), sort_keys viene utilizzato e impostato su True per l’ordinamento dei valori chiave. L’ultimo output JSON mostrerà i dati dopo l’ordinamento dei valori chiave.
# Importa modulo json
importa json
# Definisci un dizionario
dict_data = {‘nome’:’Madison’,’Month’:’May’,’year’: 2020, ‘sales’:}
# Stampa i dati del dizionario
stampa(“Dictonary Output: \n”, dict_data, “\n”)
# Converti un dizionario con i dati dell’elenco in json
json_data = json.dump(dict_data, indent = 5)
# stampa dati json
stampa(“Output JSON con indentazione: \n”, json_data)
# Converti un dizionario con i dati dell’elenco in json ordinando i tasti
json_data = json.dump(dict_data, indent = 5, sort_keys = True)
# stampa i dati json ordinati in base alle chiavi
stampa(“Output JSON ordinato con indentazione: \n”, json_data)
Uscita:
Dopo l’esecuzione dello script verrà visualizzato il seguente output. Il primo output JSON mostra i valori chiave come definiti nel dizionario e il secondo output JSON mostra i valori chiave in ordine ordinato.
Esempio-3: Convertire il dizionario in dati JSON e archiviare in un file JSON
Se si desidera memorizzare i dati JSON in un file dopo la conversione dal dizionario, è necessario utilizzare il metodo dump (). Come è possibile convertire un oggetto dizionario in un dato JSON e memorizzare i dati in un file JSON è mostrato in questo esempio. Qui, il metodo dump() utilizza tre argomenti. Il primo argomento prende l’oggetto dizionario definito prima. Il secondo argomento prende la variabile del gestore di file che è anche definita prima di creare un file JSON. Il terzo argomento definisce il valore di indentazione. Il contenuto del JSON appena scritto verrà stampato in seguito come output.
# Importa modulo json
importa json
# Definisci un dizionario
dict_data = { ‘c-101’: ‘Programmazione PHP’, ‘c-102’: ‘Programmazione Bash’, ‘c-103’:
‘Programmazione Python’,
‘c-104’: ‘Object Oriented Programming’}
# Stampa i dati del dizionario
stampa (“Dictonary Output: \n”, dict_data,”\n”)
# Imposta il nome file json
jsonFile = ‘course_list.json ‘
# Apre un file json per scrivere dati json
con open (jsonFile, ‘w’) come fileHandler1:
json.dump(dict_data, fileHandler1, indent = 2)
# Aprire un file json per la lettura
fileHandler2 = open(jsonFile)
print(“Il contenuto del file JSON: \n”, fileHandler2.leggi())
Output:
Dopo l’esecuzione dello script verrà visualizzato il seguente output.
Conclusione:
È necessario nascondere i dati del dizionario nei dati JSON per semplificare le varie attività di programmazione. Questa conversione dei dati è importante perché i dati possono trasferire facilmente da uno script a un altro script utilizzando JSON. Spero che questo tutorial aiuterà gli utenti Python a conoscere i modi per convertire i dati del dizionario in dati JSON e applicarli correttamente nel loro script.