Come ordinare gli oggetti JSON in Python

Come ordinare gli oggetti JSON in Python
Il file JSON è un mezzo molto popolare per scambiare dati tra diversi tipi di linguaggi di programmazione. È un formato file basato sul testo indipendente dal linguaggio che memorizza i dati utilizzando un array e un oggetto. Può archiviare numeri, stringhe, booleane e un altro array o oggetto come contenuto. L'oggetto JSON può essere ordinato utilizzando funzioni, moduli e funzioni definite dall'utente Python integrate. In questo tutorial sono stati spiegati diversi modi per ordinare l'oggetto JSON in Python.

Esempio-1: ordina l'oggetto JSON usando JSON.dumps ()

Usando JSON.dumps () La funzione è un modo per ordinare l'oggetto JSON. Viene utilizzato per convertire l'array di oggetti JSON in un oggetto JSON ordinato. Il valore dell'argomento Sort_keys della funzione dumps () richiederà di impostare true per generare gli oggetti JSON ordinati dall'array di oggetti JSON. Crea un file Python con il seguente script ordinare gli oggetti JSON usando JSON.Dumps () funzione. Sia gli oggetti JSON originali che ordinati verranno stampati dopo aver eseguito lo script.

# Importa il modulo JSON
Importa JSON
# Array di oggetti JSON
Products = ["Name": "HDD", "Brand": "Samsung", "Price": 100,
"Nome": "Monitor", "Brand": "Dell", "Price": 120,
"Nome": "Mouse", "Brand": "Logitech", "Price": 10]
# Leggi e stampa i dati originali
print ("I dati originali: \ n 0".Formato (prodotti))
# Converti nell'oggetto JSON dopo l'ordinamento
Sorted_json_data = json.Dumps (Products, Sort_Keys = true)
# Stampa i dati JSON ordinati
print ("I dati JSON ordinati in base alle chiavi: \ n 0".formato (seled_json_data))

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script. Ogni oggetto JSON contiene tre coppie di valore chiave nell'array JSON. I valori degli oggetti sono stati ordinati in base alle chiavi nell'output. Secondo il valore chiave, la chiave del marchio è apparsa per prima e la chiave di prezzo è apparsa per ultima in base all'ordinamento.

Esempio-2: ordina l'oggetto JSON usando lambda

L'uso di lambda nella funzione Ordine () è un altro modo per ordinare gli oggetti JSON. Crea il file Python con il seguente script per ordinare gli oggetti JSON usando Ord () e la funzione Lambda. La chiave o le chiavi particolari possono essere menzionate per l'ordinamento quando la lambda viene utilizzata per l'ordinamento. Nella sceneggiatura seguente, la stessa serie di oggetti JSON ha usato che è stato utilizzato nell'esempio precedente. Esistono tre chiavi negli oggetti JSON. Questi sono nome, marchio e prezzo. Il tasto "Brand" ha menzionato nell'ordinamento () per la chiave di ordinamento. Quindi, gli oggetti JSON verranno ordinati in base ai valori della chiave "marchio". Sia i valori originali che i valori ordinati verranno stampati come output.

# Array di oggetti JSON
Products = ["Nome": "HDD", "Brand": "Samsung", "Price": "$ 100",
"Nome": "Monitor", "Brand": "Dell", "Price": "$ 120",
"Nome": "Mouse", "Brand": "Logitech", "Price": "$ 10"]
# Stampa i dati originali
print ("The Original JSON Data: \ n 0".Formato (prodotti))
# Ordina i dati JSON in base al valore della chiave del marchio
prodotti.ordin (key = lambda x: x ["marchio"])
# Stampa i dati JSON ordinati
Print ("I dati JSON ordinati in base al valore del marchio: \ n 0".Formato (prodotti))

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script. Tre valori del marchio definiti nello script sono Samsung, Dell e Logitech. Dopo l'ordinamento, l'oggetto contenente il prodotto del 'Dell"Il marchio è apparso per primo e l'oggetto contenente il"SAMSUNG'Il marchio è apparso per ultimo nell'output.

Esempio-3: Ordina l'oggetto JSON usando la funzione ordinata

Crea un file Python con il seguente script per ordinare gli oggetti JSON usando il pprint modulo e il smistato() funzione. IL pprint Il modulo viene importato nello script per utilizzare la funzione pprint () per formattare l'output JSON. Una serie di quattro oggetti JSON è stata dichiarata nella sceneggiatura. Ogni oggetto contiene tre coppie di valore chiave. Le chiavi sono nome, inviare, E e-mail. Una funzione definita dall'utente denominata sort_by_key () è dichiarato per ordinare gli oggetti JSON in base al valore di "nome' chiave. Questa funzione è chiamata in smistato() funzione usando l'argomento denominato chiave. Dopo aver eseguito il smistato() funzione, gli oggetti JSON verranno stampati ordinando gli oggetti in base ai valori della chiave del nome.

# Importa il modulo pprint
importare pprint
# Array di oggetti JSON
Employee_List = [

'Nome': 'Firoz Shah',
'post': 'hr',
'email': 'commercialista'
,

"Nome": "Aiyan Hasan",
'post vendita',
'email': 'manager'
,

'Nome': 'Mahmuda Feroz',
'post': 'marketing',
"Email": "CEO"
]
# Stampa l'elenco JSON originale
Stampa ("Array of JSON Objects prima di ordinare:")
pprint.PPRINT (Employee_List)
# Dichiarare la funzione per restituire i dati ordinati in base al nome
def sort_by_key (elenco):
Elenco di resi ['Nome']
# Stampa l'elenco JSON ordinato in base al tasto Nome
Print ("\ Narray of JSON Objects dopo l'ordinamento:")
pprint.PPRINT (Ordined (Employee_List, Key = Sort_by_Key))

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script sopra. Tre valori del tasto Nome definito nella sceneggiatura sono "Firoz Shah", "Aiyan Hasan" e "Mahmuda Feroz". Dopo l'ordinamento, l'oggetto JSON che contiene "Aiyan Hasan" nel tasto Nome è apparso per primo, e l'oggetto JSON che contiene Mahmuda Feroz "nel tasto Nome è apparso per ultimo nell'output.

Esempio-4: ordina gli oggetti JSON in ordine decrescente

Gli oggetti JSON sono stati ordinati in ordine crescente nei tre esempi precedenti. Il modo per ordinare l'oggetto JSON in ordine decrescente in base a un particolare valore chiave ha mostrato in questo esempio. Crea un file Python con il seguente script che ordinerà gli oggetti JSON in ordine decrescente in base al valore della chiave di prezzo.

importare pprint
# Array di oggetti JSON
Products = ["Nome": "HDD", "Brand": "Samsung", "Price": "$ 100",
"Nome": "Monitor", "Brand": "Dell", "Price": "$ 120",
"Nome": "Mouse", "Brand": "Logitech", "Price": "$ 10"]
"
Stampa gli oggetti JSON ordinati in ordine decrescente
in base al valore della chiave di prezzo
"
Print ("\ Narray of JSON Objects dopo l'ordinamento:")
Products = Ordined (Products, Key = Lambda K: K ['Price'], Reverse = True)
pprint.pprint ((prodotti))

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script sopra. Dopo aver smistato gli oggetti JSON, l'oggetto contenente il valore di prezzo più alto è apparso per primo e l'oggetto contenente il valore di prezzo più basso è apparso l'ultimo nell'output.

Conclusione:

Quattro diversi modi per ordinare gli oggetti JSON sono stati mostrati in questo tutorial usando vari esempi. Le funzioni di ordinamento (), ordinato () e dumps () sono state usate per ordinare l'oggetto JSON in ordine crescente e discendente.