Comment trier les objets JSON dans Python

Comment trier les objets JSON dans Python
Le fichier JSON est un moyen très populaire pour échanger des données entre les différents types de langages de programmation. Il s'agit d'un format de fichier texte indépendant du langage qui stocke les données en utilisant un tableau et un objet. Il peut stocker des numéros, des chaînes, du booléen et un autre tableau ou objet comme contenu. L'objet JSON peut être trié en utilisant des fonctions Python intégrées, des modules et des fonctions définies par l'utilisateur. Différentes façons de trier l'objet JSON dans Python ont été expliquées dans ce tutoriel.

Exemple-1: Trier l'objet JSON en utilisant JSON.Dumps ()

En utilisant json.Dumps () La fonction est une façon de trier l'objet JSON. Il est utilisé pour convertir le tableau d'objets JSON en un objet JSON trié. La valeur de l'argument Sort_keys de la fonction Dumps () nécessitera de définir True pour générer les objets JSON triés à partir du tableau d'objets JSON. Créez un fichier Python avec le script suivant Triez les objets JSON à l'aide de JSON.Fonction Dumps (). Les objets JSON originaux et triés seront imprimés après l'exécution du script.

# Importer le module JSON
Importer JSON
# Tableau d'objets JSON
Products = ["Name": "HDD", "Brand": "Samsung", "Price": 100,
"Name": "Monitor", "Brand": "Dell", "Price": 120,
"name": "souris", "marque": "logitech", "prix": 10]
# Lire et imprimer les données d'origine
print ("Les données d'origine: \ n 0".format (produits))
# Convertir en l'objet JSON après le tri
trimed_json_data = json.Dumps (produits, sort_keys = true)
# Imprimez les données JSON triées
print ("Les données JSON triées basées sur les touches: \ n 0".format (trid_json_data))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script. Chaque objet JSON contient trois paires de valeurs clés dans le tableau JSON. Les valeurs des objets ont trié en fonction des clés de la sortie. Selon la valeur clé, la clé de marque est apparue en premier, et la clé de prix est apparue la dernière sur la base du type.

Exemple-2: Trier l'objet JSON à l'aide de Lambda

L'utilisation de Lambda dans la fonction SORT () est une autre façon de trier les objets JSON. Créez le fichier Python avec le script suivant pour trier les objets JSON à l'aide de Sort () et la fonction lambda. La clé ou les touches particulières peut être mentionnée pour le tri lorsque la Lambda est utilisée pour le tri. Dans le script suivant, le même tableau d'objets JSON a utilisé qui a été utilisé dans l'exemple précédent. Trois clés existent dans les objets JSON. Ce sont le nom, la marque et le prix. La clé de «marque» a mentionné dans le SORT () pour la clé de tri. Ainsi, les objets JSON seront triés en fonction des valeurs de la clé «marque». Les valeurs d'origine et les valeurs triées seront imprimées en tant que sortie.

# Tableau d'objets JSON
Products = ["Name": "HDD", "Brand": "Samsung", "Price": "100 $",
"Name": "Monitor", "Brand": "Dell", "Price": "120 $",
"name": "souris", "marque": "logitech", "prix": "10 $"]
# Imprimez les données d'origine
print ("Les données JSON originales: \ n 0".format (produits))
# Trier les données JSON en fonction de la valeur de la clé de marque
des produits.Trier (key = lambda x: x ["marque"])
# Imprimez les données JSON triées
print ("Les données JSON triées basées sur la valeur de la marque: \ n 0".format (produits))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script. Les trois valeurs de marque définies dans le script sont Samsung, Dell et Logitech. Après le tri, l'objet contenant le produit du 'Tablier"La marque est apparue en premier, et l'objet contenant le"Samsung'La marque est apparue la dernière dans la sortie.

Exemple-3: trier l'objet JSON en utilisant la fonction triée

Créez un fichier Python avec le script suivant pour trier les objets JSON en utilisant le tampon module et le tri () fonction. Le tampon Le module est importé dans le script pour utiliser la fonction pprint () pour formater la sortie JSON. Un tableau de quatre objets JSON a été déclaré dans le script. Chaque objet contient trois paires de valeurs clés. Les clés sont nom, poste, et e-mail. Une fonction définie par l'utilisateur nommé sort_by_key () est déclaré trier les objets JSON en fonction de la valeur du 'nom' clé. Cette fonction est appelée dans le tri () fonction en utilisant l'argument nommé clé. Après avoir exécuté le tri () Fonction, les objets JSON seront imprimés en triant les objets en fonction des valeurs de la clé de nom.

# Module d'importation
Importer un empreinte
# Tableau d'objets JSON
employee_list = [

'Nom': 'Firoz Shah',
'Post': 'hr',
«Email»: «comptable»
,

«Nom»: «Aiyan Hasan»,
'après ventes',
«Email»: «gestionnaire»
,

«Nom»: «Mahmuda Feroz»,
«Post»: «marketing»,
«Email»: «PDG»
]
# Imprimer la liste JSON originale
Print ("Array of JSON Objects avant de trier:")
tampon.pprint (employee_list)
# Déclarer la fonction pour renvoyer les données triées en fonction du nom
def sort_by_key (liste):
retour de la liste ['name']
# Imprimez la liste JSON triée en fonction de la clé de nom
Print ("\ Narray of JSON Objets après le tri:")
tampon.pprint (tri (employee_list, key = sort_by_key))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. Les trois valeurs de la clé de nom définies dans le script sont «Firoz Shah», «Aiyan Hasan» et «Mahmuda Feroz». Après le tri, l'objet JSON qui contient `` Aiyan Hasan '' dans la clé de nom est apparu en premier, et l'objet JSON qui contient Mahmuda Feroz 'dans la clé de nom est apparu en dernier dans la sortie.

Exemple-4: trier les objets JSON dans l'ordre descendant

Les objets JSON ont trié par ordre croissant dans les trois exemples précédents. La façon de trier l'objet JSON dans l'ordre descendant basé sur une valeur de clé particulière s'est montré dans cet exemple. Créez un fichier Python avec le script suivant qui triera les objets JSON dans l'ordre descendant en fonction de la valeur de la clé de prix.

Importer un empreinte
# Tableau d'objets JSON
Products = ["Name": "HDD", "Brand": "Samsung", "Price": "100 $",
"Name": "Monitor", "Brand": "Dell", "Price": "120 $",
"name": "souris", "marque": "logitech", "prix": "10 $"]
"
Imprimez les objets JSON triés par ordre décroissant
en fonction de la valeur clé de prix
"
Print ("\ Narray of JSON Objets après le tri:")
produits = tri (produits, key = lambda k: k ['prix'], inverse = true)
tampon.pprint ((produits))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. Après avoir trié les objets JSON, l'objet contenant la valeur de prix la plus élevée est apparu en premier, et l'objet contenant la valeur de prix la plus basse est apparu en dernier dans la sortie.

Conclusion:

Quatre façons différentes de trier les objets JSON ont été montrés dans ce tutoriel en utilisant divers exemples. Les fonctions tri (), tri () et dumps () ont été utilisées ici pour trier l'objet JSON dans l'ordre croissant et descendant.