Dans cet exercice, l'objectif est de trier une liste qui contient des tuples :

liste = [("Harry Potter", 5), ("Wall-E", 3), ("Blade Runner", 4)]

Comme vous pouvez le voir, la liste contient des tuples qui ont comme premier élément le nom d'un film, et comme deuxième élément leur note sur 5.

Le but de l'exercice est de trier ces tuples en fonction de la note qui leur a été attribuée.

La variable liste doit donc être ordonnée comme ceci à la fin de l'exercice (vous ne devez pas créer de nouvelle liste mais modifier la liste existante).

[('Wall-E', 3), ('Blade Runner', 4), ('Harry Potter', 5)]

Pour réussir cet exercice, vous pouvez utiliser une fonctionnalité de Python qui permet de résoudre le script en une seule ligne. Si vous n'avez vraiment aucune idée de comment faire, je vous conseille de faire une petite recherche sur le net.

Afficher l'aide

La fonction sort accepte un paramètre key, qui permet de trier une liste selon une fonction anonyme.

code Code

liste = [("Harry Potter", 5), ("Wall-E", 3), ("Blade Runner", 4)]
liste.sort(key=lambda x: x[1])

comment Explications

Pas besoin d'aller chercher très loin pour résoudre cet exercice.

En effet, la méthode sort a un paramètre key, qui va vous permettre de trier la liste selon des critères spécifiques.

Dans ce cas-ci, nous donnons comme argument au paramètre key une fonction anonyme, qui elle-même nous retourne l'élément 1 de la variable qui est passée à x.

L'élément 1 du tuple correspond à la note du film, la méthode sort va donc trier les éléments de notre liste en fonction de cet élément et donc trier notre liste en fonction de la note accordée à chaque film.

star Points importants

  • La méthode sort possède un paramètre key, auquel nous pouvons passer une fonction anonyme pour trier une liste selon des critères spécifiques.
liste = [("Harry Potter", 5), ("Wall-E", 3), ("Blade Runner", 4)]
liste = [("Harry Potter", 5), ("Wall-E", 3), ("Blade Runner", 4)]
liste.sort(key=lambda x: x[1])

Console

Un instant...
terminal

Résultats

/ 1 tests validés

Test de l'ordre des éléments dans la variable liste

assert liste == [('Wall-E', 3), ('Blade Runner', 4), ('Harry Potter', 5)], "Les éléments de la liste ne sont pas dans le bon ordre."

        

Bravo, tu as réussi cet exercice de code 🥳

🚀

Envoyer ma solution

Vous avez trouvé une solution alternative pour cet exercice ? Proposez votre solution à la communauté 👇

Seules les propositions différentes de la solution proposée par Docstring peuvent être envoyées.

Ma solution :

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.