Trier une liste par ordre alphabétique en Python

Manav Narula 30 janvier 2023
  1. Utilisez la méthode sort() pour trier une liste par ordre alphabétique en Python
  2. Utilisez la fonction sorted() pour trier une liste par ordre alphabétique en Python
  3. Utiliser l’algorithme Quick Sort pour trier une liste par ordre alphabétique en Python
Trier une liste par ordre alphabétique en Python

Dans ce tutoriel, nous allons discuter de la façon de trier une liste contenant des chaînes de caractères par ordre alphabétique en utilisant les fonctions sort() et sorted() et en utilisant l’algorithme de tri rapide.

Les fonctions sort() et sorted() peuvent toutes deux exécuter la même fonction, la principale différence entre elles étant que la fonction sort() trie la liste originale, tandis que la fonction sorted() crée une nouvelle liste.

Utilisez la méthode sort() pour trier une liste par ordre alphabétique en Python

La méthode sort() de l’objet liste est utilisée pour trier une liste. Par défaut, elle trie la liste par ordre croissant. Par exemple :

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
my_list.sort()
print(my_list)

Production :

['Baron', 'Jack', 'Jay', 'Mark', 'Sam']

Pour trier la liste dans l’ordre inverse, nous pouvons utiliser le paramètre reverse et le mettre à True. Par défaut, c’est False. Par exemple :

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
my_list.sort(reverse=True)
print(my_list)

Production :

['Sam', 'Mark', 'Jay', 'Jack', 'Baron']

Remarquez que l’ordre de la liste triée est inversé. Nous pouvons également spécifier la condition de tri en utilisant le paramètre key. Dans le code ci-dessous, nous allons trier la liste en fonction de la longueur de la chaîne de chaque élément en ordre croissant :

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
my_list.sort(key=len)
print(my_list)

Production :

['Sam', 'Jay', 'Mark', 'Jack', 'Baron']

Utilisez la fonction sorted() pour trier une liste par ordre alphabétique en Python

La fonction sorted() trie également une liste dans l’ordre requis, mais elle crée une nouvelle liste et ne modifie pas la liste originale. Pour effectuer un tri alphabétique en ordre croissant, il suffit de le passer à la fonction comme indiqué ci-dessous.

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
sorted_list = sorted(my_list)
print(sorted_list)

Production :

['Baron', 'Jack', 'Jay', 'Mark', 'Sam']

Comme pour la méthode sort(), nous pouvons trier par ordre décroissant en utilisant le paramètre reverse. Par exemple :

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
sorted_list = sorted(my_list, reverse=True)
print(sorted_list)

Production :

['Sam', 'Mark', 'Jay', 'Jack', 'Baron']

Nous pouvons également utiliser le paramètre key pour spécifier la condition de tri comme nous l’avons fait avec la fonction sort(). Par exemple :

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
sorted_list = sorted(my_list, reverse=True, key=len)
print(sorted_list)

Production :

['Baron', 'Mark', 'Jack', 'Sam', 'Jay']

Utiliser l’algorithme Quick Sort pour trier une liste par ordre alphabétique en Python

Nous pouvons également utiliser l’algorithme de tri rapide pour trier une liste. Cette méthode peut être non conventionnelle, mais il convient de noter que d’autres techniques de tri comme le tri par fusion, le tri par sélection, le tri par insertion, le tri en tas et le tri par bulles peuvent également y parvenir. Le code suivant montre une fonction qui implémente la méthode de tri rapide pour trier une liste en Python.

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]


def quicksort(lst):
    if not lst:
        return []
    return (
        quicksort([x for x in lst[1:] if x < lst[0]])
        + [lst[0]]
        + quicksort([x for x in lst[1:] if x >= lst[0]])
    )


print(quicksort(my_list))

Production :

['Baron', 'Jack', 'Jay', 'Mark', 'Sam']
Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Python List