Come convertire il JSON in un oggetto Python? È quello che vedremo assieme in questo articolo!
Il JSON permette di gestire in modo molto rapido, semplice e diretto diverse informazioni: puoi leggerle, manipolarle e scambiarle tra applicazioni e linguaggi di programmazione senza troppi sforzi.
Python non è escluso da tutto questo.
Ciao mi chiamo Lorenzo Neri e sono un informatico: realizzo contenuti per aiutare le persone a padroneggiare l’arte del nuovo millennio, ovvero l’informatica!
Python, vista la sua flessibilità, permette di gestire in maniera molto diretta e semplice il JSON.
Ovviamente se sei qua, ti stai chiedendo come convertire il JSON in un oggetto a tutti gli effetti: scopriamolo assieme.
Un package che fa tutto: json
In Python (versioni moderne, quindi 3.12 e 3.13 nel 2025) abbiamo già incluso un package che si chiama semplicemente… json.
Questo package ci permette di convertire un JSON in un oggetto Python: indovina?
Gli oggetti vengono convertiti direttamente in dizionari (dict) e in liste (list).
Non serve nessun parsing manuale: ci pensa il package a fare tutto per te.
Nota bene: il JSON può arrivare da una stringa, da un file, oppure da una richiesta HTTP delle tue API. Al package non importa 😉
loads: il metodo per convertire il JSON in un oggetto Python
Vediamo allora il metodo “loads”: è quello che ci permette di convertire una stringa JSON in un oggetto Python.
Partiamo da un esempio.
Abbiamo il seguente JSON:
{ "tags": ["incididunt", "cillum", "dolore"], "friends": [ { "id": 0, "name": "Corrine Chang" }, { "id": 1, "name": "Florence Guzman" } ], "greeting": "Hello, Hoover Hawkins! You have 9 unread messages." } C’è di tutto: liste, stringhe, oggetti annidati.
Ora, creo una variabile di tipo stringa per contenere questo JSON:
dati_json = '{ "tags": ["incididunt", "cillum", "dolore"], "friends": [ { "id": 0, "name": "Corrine Chang" }, { "id": 1, "name": "Florence Guzman" } ], "greeting": "Hello, Hoover Hawkins! You have 9 unread messages." }' Sì, per semplicità l’ho messo tutto in una sola riga, ma ora vediamo come convertirlo in un oggetto Python vero e proprio:
import json oggetto_python_json = json.loads(dati_json) Ora, la conversione attuata tramite “loads” ha reso il nostro JSON un dizionario Python: le chiavi diventano keys del dict e i valori restano accessibili come qualsiasi altro oggetto Python.
Ecco alcuni esempi pratici:
>>> oggetto_python_json['greeting'] 'Hello, Hoover Hawkins! You have 9 unread messages.' >>> oggetto_python_json['friends'][1] {'id': 1, 'name': 'Florence Guzman'} >>> print([tag for tag in oggetto_python_json['tags']]) ['incididunt', 'cillum', 'dolore'] load: quando il JSON arriva da un file
Se invece il JSON è salvato in un file (es. dati.json), il metodo da usare è “load” (senza la “s” finale).
with open("dati.json", "r") as file: oggetto_da_file = json.load(file) print(oggetto_da_file['friends'][0]) Risultato? Otterrai lo stesso tipo di oggetto Python, solo che i dati arrivano direttamente dal file.
In altre parole, eccoti come convertire JSON in un oggetto Python vero e proprio, sia da stringa che da file.
Ah ma prima di salutarti, ti invito a leggere questo mio articolo legato all’uso del JSON in Python!
