Python

Fonction de tri Python

Fonction de tri Python

Python est un langage de programmation généraliste largement utilisé. Les principales raisons de la popularité de Python sont sa syntaxe simple, ses modules intégrés et ses fonctions qui vous permettent d'effectuer des tâches puissantes. La fonction sort() est une fonction intégrée à Python qui trie les éléments dans une liste, par ordre croissant par défaut. Vous pouvez également utiliser la fonction sort() pour trier les éléments par ordre décroissant ou définir les critères de tri. Dans cet article, la fonction sort() est expliquée en détail avec quelques exemples simples.

Syntaxe de la fonction sort()

La syntaxe de la fonction sort() est la suivante :

liste_obj.sort(reverse= "",clé= "")

Les deux paramètres à l'intérieur de la fonction sort() sont facultatifs. Le paramètre reverse permet de trier la liste par ordre décroissant. Si « reverse=true », alors la liste sera triée par ordre décroissant ; sinon, "reverse=false" par défaut. Le paramètre « clé » précise la fonction qui définit les critères de tri. La fonction sort() ne modifie pas l'ordre des éléments dans l'objet liste d'origine ; au lieu de cela, il crée une copie de l'objet de liste avec des éléments triés et le renvoie comme sortie.

Exemples de fonction sort()

Les exemples suivants couvrent plus en détail l'utilisation de la fonction sort().

Exemple 1 : tri d'une liste de chaînes

La fonction sort() trie les listes de chaînes, d'entiers et de nombres à virgule flottante. Dans ce premier exemple, nous allons trier la liste de chaînes suivante par ordre croissant à l'aide de la fonction sort().

#déclarer une liste d'élèves
étudiant = ['Mark','John','Taylor','Donald','Joseph','Albert','Cameron']
print("La liste d'origine est : ")
imprimer (étudiant)
#tri de la liste
#utilisation de la fonction sort()
élève.sorte()
print("La liste triée est : ")
imprimer (étudiant)

Production

Comme vous pouvez le voir, la liste a été triée avec succès.

Ensuite, nous allons trier la liste des éléments de chaîne par ordre décroissant. Dans ce cas, la valeur inverse est égale à « vrai."

#déclarer une liste d'élèves
étudiant = ['Mark','John','Taylor','Donald','Joseph','Albert','Cameron']
print("La liste d'origine est : ")
imprimer (étudiant)
#tri de la liste
#utilisation de la fonction sort() avec le paramètre reverse
élève.trier (inverse = vrai)
print("La liste triée est : ")
imprimer (étudiant)

Production

Dans cet exemple, nous allons trier la liste des alphabets vocaliques par ordre croissant et décroissant, respectivement.

#déclarer une liste d'élèves
ma_liste = ['i','u','a','o','e']
print("La liste d'origine est : ")
imprimer(ma_liste)
#tri de la liste par ordre croissant
#utilisation de la fonction sort()
ma liste.sorte()
print("La liste triée par ordre croissant : ")
imprimer(ma_liste)
#trier la liste par ordre décroissant
ma liste.trier (inverse = vrai)
print("La liste triée par ordre décroissant : ")
imprimer(ma_liste)

Production

Maintenant, nous allons trier la liste en fonction de la longueur de chaque élément. La fonction funclen() vérifie la liste de chaque élément et la renvoie. La fonction sort() trie ensuite les éléments de la liste en fonction de la longueur de chaque élément, les éléments ayant la longueur la plus courte arrivant en premier dans la liste triée.

#déclarer une fonction
def fonctionLen(ele):
retour len(ele)
#déclarer une liste d'animaux
my_list = ['Chèvre','Chat','Eléphant','Crocodile','Lapin','Rhinocéros']
print("La liste d'origine est : ")
imprimer(ma_liste)
#tri de la liste à l'aide de la fonction funcLen
ma liste.tri(clé=FuncLen)
print("La liste triée est : ")
imprimer(ma_liste)

Production

Pour trier les éléments de sorte que les éléments de plus grande longueur viennent en premier, la valeur du paramètre inverse doit être « true."

#déclarer une fonction
def fonctionLen(ele):
retour len(ele)
#déclarer une liste d'animaux
my_list = ['Chèvre','Chat','Eléphant','Crocodile','Lapin','Rhinocéros']
print("La liste d'origine est : ")
imprimer(ma_liste)
#tri d'une liste à l'aide de la fonction funcLen
ma liste.sort(reverse=True,key=funcLen)
print("La liste triée est : ")
imprimer(ma_liste)

Production

Exemple 2 : tri d'une liste d'entiers

La fonction sort() peut également trier une liste d'entiers par ordre croissant ou décroissant.

Dans l'exemple suivant, nous allons déclarer une liste d'entiers et la trier par ordre croissant et décroissant.

#déclarer une liste d'entiers
numListe = [10,9,2,3,1,4,5,8,7]
#impression de la liste d'origine
print("La liste d'origine est : ")
print(numListe)
#tri de la liste par ordre croissant
numListe.sorte()
#impression de la liste triée par ordre croissant
print("La liste triée par ordre croissant : ")
print(numListe)
#tri de la liste par ordre croissant
numListe.trier (inverse = vrai)
#impression de la liste triée par ordre décroissant
print("La liste triée par ordre décroissant : ")
print(numListe)

Production

La liste des nombres entiers a maintenant été triée par ordre croissant et décroissant.

Exemple 3 : tri d'une liste de nombres à virgule flottante

La fonction sort() est également applicable à une liste de nombres à virgule flottante.

Dans l'exemple suivant, nous allons trier une liste de nombres à virgule flottante dans l'ordre croissant et décroissant.

#déclarer une liste d'entiers
numListe = [1.5,1.2,4.5,10.6,11.5,3.3,3.83,3.85]
#impression de la liste d'origine
print("La liste d'origine est : ")
print(numListe)
#tri de la liste par ordre croissant
numListe.sorte()
#impression de la liste triée par ordre croissant
print("La liste triée par ordre croissant : ")
print(numListe)
#tri de la liste par ordre croissant
numListe.trier (inverse = vrai)
#impression de la liste triée par ordre décroissant
print("La liste triée par ordre décroissant : ")
print(numListe)

Production

La liste des nombres à virgule flottante a maintenant été triée par ordre croissant et décroissant.

Exemple 4 : tri d'une liste d'éléments de dictionnaire

Un dictionnaire peut être placé dans une liste en tant qu'élément.

Dans l'exemple suivant, nous allons trier les éléments du dictionnaire dans une liste lors de la création d'un dictionnaire d'étudiants. Nous allons trier les éléments en fonction de leurs valeurs d'âge.

# Une fonction qui renvoie la valeur 'année' :
def ageFunc(ele):
retourner ele['âge']
#déclarer une liste de dictionnaires étudiants
étudiants = [
'name': 'Mark', 'email':'[email protected]' ,'age': 28,
'name': 'John', 'email':'[email protected]' ,'age': 23,
'name': 'Albert', 'email':'[email protected]' ,'age': 21,
'name': 'Cameron', 'email':'[email protected]' ,'age': 27,
'name': 'Taylor', 'email':'[email protected]' ,'age': 25
]
#tri de la liste
étudiants.tri(clé=ageFunc)
#impression de la liste triée
imprimer (étudiants)

Production

Conclusion

La fonction sort() est une fonction intégrée à Python qui trie une liste d'éléments. La fonction sort() peut prendre deux paramètres optionnels, i.e., marche arrière et clé. Cet article a expliqué en détail comment utiliser la fonction Python sort() avec divers exemples.

Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...
Comment installer et jouer à Doom sur Linux
Introduction à Doom La série Doom est née dans les années 90 après la sortie du Doom original. Ce fut un succès instantané et à partir de ce moment-là...
Vulkan pour les utilisateurs Linux
Avec chaque nouvelle génération de cartes graphiques, nous voyons les développeurs de jeux repousser les limites de la fidélité graphique et se rappro...