Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Fondamentaux de Sorted | Fonctions d'ordre supérieur et lambdas
Concepts de Programmation Fonctionnelle en Python
Section 2. Chapitre 4
single

single

bookFondamentaux de Sorted

Glissez pour afficher le menu

Le tri des données est une opération courante lors de la manipulation de listes en Python. La fonction sorted est une fonction d'ordre supérieur intégrée qui permet de trier n'importe quel itérable et retourne une nouvelle liste triée, sans modifier les données d'origine. Vous pouvez utiliser sorted avec ou sans logique de tri personnalisée. Par défaut, sorted organise les éléments par ordre croissant, mais il est possible de contrôler l'ordre et les critères de tri grâce à ses paramètres optionnels.

Les paramètres les plus importants pour sorted sont :

  • iterable : les données à trier ;
  • key : une fonction optionnelle qui détermine la valeur à utiliser pour le tri de chaque élément ;
  • reverse : une valeur booléenne qui, si elle est définie sur True, trie les données par ordre décroissant.

Supposons que vous disposiez d'une liste de nombres et que vous souhaitiez les trier par ordre croissant. Il suffit d'appeler sorted(numbers). Si vous souhaitez trier les nombres par ordre décroissant, vous pouvez passer reverse=True.

12345
numbers = [9, 5, 2, 1] # Sorting in reverse order sorted_desc = sorted(numbers, reverse=True) print(sorted_desc)
copy

Il est également possible d'utiliser le paramètre key pour trier des structures de données plus complexes, telles que des listes de tuples ou de dictionnaires, en spécifiant une fonction qui extrait la valeur de comparaison de chaque élément.

12345
words = ["apple", "kiwi", "banana"] # Sorting by the length of each string sorted_words = sorted(words, key=len) print(sorted_words)
copy

Il est possible de passer n'importe quelle fonction au paramètre key, y compris une fonction lambda ou une fonction définie précédemment. Cela fait de sorted une fonction d'ordre supérieur, car elle accepte une autre fonction en argument. Le tri ne se limite pas aux nombres ou aux chaînes de caractères ; il est possible de trier des objets complexes tant qu'une fonction key appropriée est fournie.

Note
Remarque

L'itérable d'origine n'est pas modifié par sorted, qui retourne toujours une nouvelle liste. Pour trier une liste sur place, utiliser plutôt la méthode list.sort().

Tâche

Glissez pour commencer à coder

Trier une liste de tuples selon le deuxième élément de chaque tuple en utilisant la fonction sorted et une fonction nommée comme paramètre key.

  • Une liste nommée pairs contenant des tuples de deux entiers est fournie.
  • Définir une fonction nommée get_second_element qui prend un tuple en argument et retourne sa deuxième valeur.
  • Utiliser la fonction sorted et passer get_second_element comme paramètre key afin de trier pairs selon la deuxième valeur de chaque tuple.
  • Stocker le résultat dans une variable nommée sorted_pairs.
  • Ne pas oublier de supprimer pass.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 4
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

some-alt