La forma completa di JSON è la notazione oggetto JavaScript. Ciò significa che un file script (eseguibile), composto da testo in un linguaggio di programmazione, viene utilizzato per archiviare e trasferire i dati. Python supporta JSON tramite un pacchetto integrato chiamatojson>. Per utilizzare questa funzionalità, importiamo il pacchetto json nello script Python. Il testo in JSON viene eseguito tramite una stringa tra virgolette che contiene il valore nella mappatura dei valori-chiave all'interno{ }>. È simile al dizionario in Python.
json.dump()
json>module in Python module fornisce un metodo chiamatodump()>che converte gli oggetti Python in oggetti JSON appropriati. È una leggera variante didumps()>metodo.
Differenza tra dump() e dumps()
| scarico() | discariche() |
|---|---|
| Il metodo dump() viene utilizzato quando gli oggetti Python devono essere archiviati in un file. | Il dumps() viene utilizzato quando è necessario che gli oggetti siano in formato stringa e viene utilizzato per l'analisi, la stampa, ecc. |
| Il dump() necessita del nome del file json in cui l'output deve essere archiviato come argomento. | Il dumps() non richiede che venga passato alcun nome di file di questo tipo. |
| Questo metodo scrive nella memoria e quindi il comando per scrivere su disco viene eseguito separatamente | Questo metodo scrive direttamente nel file json |
| Metodo più veloce | 2 volte più lento |
dump() e i suoi argomenti
Sintassi: json.dump(d, skipkeys=False, verify_ascii=True, check_circular=True,allow_nan=True, cls=Nessuno, indent=Nessuno, separatori=Nessuno)
parametri:
- trattino: Migliora la leggibilità del file json. I possibili valori che possono essere passati a questo parametro sono semplicemente virgolette doppie(
''>), qualsiasi valore intero. Le virgolette doppie semplici fanno apparire ogni coppia chiave-valore in una nuova riga.Esempio:
import>json>># python object(dictionary) to be dumped>dict1>=>{>>'emp1'>: {>>'name'>:>'Lisa'>,>>'designation'>:>'programmer'>,>>'age'>:>'34'>,>>'salary'>:>'54000'>>},>>'emp2'>: {>>'name'>:>'Elis'>,>>'designation'>:>'Trainee'>,>>'age'>:>'24'>,>>'salary'>:>'40000'>>},>}>># the json file where the output must be stored>out_file>=>open>(>'myfile.json'>,>'w'>)>>json.dump(dict1, out_file, indent>=>6>)>>out_file.close()>>
>
Produzione:

forma normale di Greibach
- salta i tasti: Se la chiave non è dei tipi standard consentiti come int, float, string, None o bool, verrà generato un errore durante il dump. Per evitare ciò, se questo parametro è impostato su VERO .
Esempio:
import>json>># python object(dictionary) to be dumped>dict1>=>{>>(>'addresss'>,>'street'>):>'Brigade road'>,>}>># the json file where the output must be stored>out_file>=>open>(>'myfile.json'>,>'w'>)>>json.dump(dict1, out_file, indent>=>6>)>>out_file.close()>>
>
Produzione:
Se skipkeys non è impostato su true, verrà generato il seguente errore:

- separatore: Questo parametro assume uno o due valori. Il primo valore specifica il simbolo che separa una coppia chiave-valore da un'altra. Il successivo specifica il simbolo che separa il valore dalla sua chiave.
- sort_keys: Questo parametro assume un valore booleano. Se è impostato su True, le chiavi vengono impostate in ordine crescente altrimenti appaiono come nell'oggetto Python
- garantire_ascii: Anche questo parametro accetta solo valori booleani. Se non è impostato su true, i caratteri non ASCII vengono inseriti nel file di output così come sono. Per impostazione predefinita il valore è VERO .
Vedi i due codici qui sotto per ottenere la differenza.
Esempio 1:
# dictionary to be dumped>d>=>{>'lang'>:>'??? ????'>}>>with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:>>json.dump(d, json_file, ensure_ascii>=>False>)>>
>
Produzione:

Esempio 2: Se è impostato su True, il contenuto del file json sarà:
import>json>>># dictionary to be dumped>d>=>{>'lang'>:>'??? ????'>}>>with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:>>json.dump(d, json_file, ensure_ascii>=>True>)>tostring java
>
>
Produzione:

- consent_in: Aiuta a serializzare l'intervallo di valori float.
Esempio 1:
anche modello
import>json>>># dictionary to be dumped>d>=>{>>'a'>:>1>,>>'x'>:>float>(>'nan'>)>}>>with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:>>json.dump(d, json_file, allow_nan>=>False>)>>
>
Produzione:

Esempio 2: Se è impostato su True, l'errore non verrà generato. Il contenuto del file json sarà:
import>json>>># dictionary to be dumped>d>=>{>>'a'>:>1>,>>'x'>:>float>(>'nan'>)>}>>with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:>>json.dump(d, json_file, allow_nan>=>True>)>>
>
Produzione:






