Comment trier avec lambda en python

Comment trier avec lambda en python
L'opération de tri est appliquée à une liste de données dans n'importe quel langage de programmation. Les tuple, la liste et le dictionnaire sont utilisés dans Python pour stocker plusieurs données. Les valeurs du tuple et de la liste sont accessibles par index numérique, et les clés accèdent aux valeurs du dictionnaire. De nombreuses fonctions intégrées existent dans Python pour trier la liste des données dans l'ordre croissant ou descendant. La fonction lambda en fait partie. Le codeur peut définir l'ordre de tri en fonction de l'exigence en utilisant cette fonction. Les utilisations de la fonction lambda pour trier la liste et les objets de dictionnaire de différentes manières ont été expliqués dans ce tutoriel.

Exemple-1: Triez une liste des données de chaîne numériques

Créez un fichier Python avec le script suivant pour trier une liste de données de chaîne à l'aide de Lambda qui contient toutes les valeurs de nombre. Une liste de 6 éléments a été définie dans le script. Ici, lambda a utilisé à l'intérieur du tri () fonction pour trier la liste. La variable de liste a été donnée comme la première valeur d'argument, la Lambda a été définie comme la valeur clé, et la position de départ du type a été définie dans le troisième argument. Ensuite, la fonction print () a utilisé pour imprimer la liste triée avec l'espace.

# Déclarer une liste de chaîne avec des valeurs numériques
n_list = ['11', '50', '5', '1', '37', '19']
# Trier la liste à l'aide de lambda et de la fonction triée
trid_list = tri (n_list, key = lambda x: int (x [0:]))
# Imprimez la liste triée
Print ("La liste des valeurs triées est:")
pour la valeur dans trid_list:
imprimer (valeur, end = ")

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus.

Exemple-2: trier une liste de tuples

Créez un fichier Python avec le script suivant pour trier une liste de trois tuples à l'aide de Lambda, où chaque tuple contient trois éléments. Trois types de tri ont été affichés dans le script. La position de tri est définie sur 0 dans la première fonction triée. Cela triera la liste en fonction du premier élément de chaque tuple. La position de tri est définie sur 1 dans la deuxième fonction triée. Cela triera la liste en fonction du deuxième élément de chaque tuple. La position de tri est définie sur 2 dans la troisième fonction triée. Cela triera la liste en fonction du troisième élément de chaque tuple.

# Déclarer une liste de tuples
tuple_list = [("html", 15, 'M01'), ("JavaScript", 10, 'M03'), ("bootstrap", 5, 'M02')]
# Trier la liste basée sur le premier élément du tuple
trimed_list1 = tri (tuple_list, key = lambda x: x [0])
# Imprimez la première liste triée
print ("La liste triée basée sur le premier élément: \ n", trié_list1)
# Trier la liste basée sur le deuxième élément du tuple
trimed_list2 = tri (tuple_list, key = lambda x: x [1])
# Imprimez la deuxième liste triée
print ("La liste triée basée sur le deuxième élément: \ n", trié_list2)
# Trier la liste basée sur le troisième élément du tuple
trimed_list3 = tri (tuple_list, key = lambda x: x [2])
# Imprimez la troisième liste triée
print ("La liste triée basée sur le troisième élément: \ n", trié_LIST3)

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. Trois listes triées des tuples se sont montrées dans la sortie en fonction de la position triée.

Exemple-3: Triez une liste contenant une autre liste

Créez un fichier Python avec le script suivant pour trier la liste imbriquée à l'aide de Lambda. Une liste vide a été déclarée stocker les valeurs de la liste triée. Ici, les boucles imbriquées ont utilisé pour trier les éléments de la liste imbriquée. La boucle extérieure «pour» itérera en fonction du nombre de listes intérieures définies dans la liste principale. Selon le script, trois listes intérieures telles que définies dans la liste principale où la première liste intérieure a trois éléments, la deuxième liste intérieure a deux éléments et la troisième liste intérieure a quatre éléments. La boucle intérieure «pour» iraera en fonction des éléments de chaque liste intérieure. La fonction triée () a appelé avec la Lambda à l'intérieur de la boucle intérieure pour trier la liste imbriquée.

# Déclarer la liste imbriquée
Nested_list = [['mango', 'banana', 'orange'], ['rose', 'lily'], ['lion', 'singe', 'tigre', 'cerf']]]
# Déclarer une liste vide
trid_data = []
# Boucle pour itérer la liste extérieure
pour i dans la gamme (Len (Need_list)):
# Boucle pour itérer la liste intérieure
pour j dans la gamme (Len (Need_list [i])):
# Trier la liste intérieure
trimed_list = tri (Need_list [i], key = lambda x: x [0])
# Ajouter la liste triée
trié_data.Ajouter (trid_list)
# Imprimez la liste de création triée
print ("La liste après tri: \ n ".format (trid_data))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. La liste de trois listes triées s'est montrée dans la sortie.

Exemple-4: trier une liste des dictionnaires

Créez un fichier Python avec le script suivant pour trier une liste de dictionnaires à l'aide de Lambda. Chaque dictionnaire contient trois paires de valeurs clés à l'intérieur de la liste. Quatre types de tri ont été affichés dans le script. La première sortie affichera le tri basé sur la clé de code. La deuxième sortie affichera le tri basé sur la touche de nom. La troisième sortie affichera le tri basé sur le code et les touches de nom. La quatrième sortie affichera le tri dans l'ordre descendant en fonction de la clé de nom.

# Déclarer la liste du dictionnaire
DIC_LIST = ["Code": "CSE-401", "Name": "Multimedia", "Credit": 2.0,
"Code": "CSE-101", "Nom": "Computer Fundamental", "Credit": 1.5,
"Code": "CSE-305", "Nom": "Unix Programming", "Credit": 3.0]
# Imprimez le dictionnaire trié basé sur le code
print ("Tri basé sur le code: \ n", tri (dic_list, key = lambda i: i ['code'])))
# Imprimez le dictionnaire trié en fonction du nom
print ("Tri basé sur le nom: \ n", tri (dic_list, key = lambda i: (i ['name']))))
# Imprimez le dictionnaire trié en fonction du code et du nom
print ("Tri basé sur le code et le nom: \ n", trié (dic_list, key = lambda i: (i ['code'], i ['name'])))
# Imprimez le dictionnaire trié en descendant en fonction du nom
print ("Tri dans l'ordre descendant basé sur le nom: \ n", tri (dic_list, key = lambda i: i ['name'], reverse = true))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus.

Conclusion:

Les utilisations de Lambda pour trier quatre listes différentes se sont montrées dans ce tutoriel en utilisant des exemples simples qui aideront les utilisateurs de Python à comprendre le but de l'utilisation de Lambda en tri.