Exercices Fonctions & Modules Trier des dictionnaires par cle
🎉

Bravo!

Intermédiaire 🧠 Fondamentaux 20 XP 0 personnes ont réussi

Trier des dictionnaires par cle

sorted() avec key est particulierement utile quand tu travailles avec des listes de dictionnaires, ce qui arrive tout le temps en pratique (données JSON, résultats d'API, etc.).

Quand tu as une liste de dictionnaires, tu peux les trier selon la valeur d'une clé spécifique en utilisant une lambda dans key.

Par exemple, pour trier des produits par prix :
produits = [{'nom': 'clavier', 'prix': 50}, {'nom': 'souris', 'prix': 25}]
sorted(produits, key=lambda p: p['prix'])
donne [{'nom': 'souris', 'prix': 25}, {'nom': 'clavier', 'prix': 50}]

Écris une fonction trier_employes(employes, critere) qui trie une liste de dictionnaires d'employes selon le critere donne (une clé du dictionnaire). Le tri doit etre croissant.

Exemple :
employes = [{'nom': 'Alice', 'age': 30}, {'nom': 'Bob', 'age': 25}]
trier_employes(employes, 'age') renvoie [{'nom': 'Bob', 'age': 25}, {'nom': 'Alice', 'age': 30}]
trier_employes(employes, 'nom') renvoie [{'nom': 'Alice', 'age': 30}, {'nom': 'Bob', 'age': 25}]

Tests (3/4)

Tri par age
employes = [{'nom': 'Alice', 'age': 30}, {'nom': 'Bob', 'age': 25}]
assert trier_employes(employes, 'age') == [{'nom': 'Bob', 'age': 25}, {'nom': 'Alice', 'age': 30}]
Tri par nom
employes = [{'nom': 'Charlie', 'age': 35}, {'nom': 'Alice', 'age': 30}]
assert trier_employes(employes, 'nom') == [{'nom': 'Alice', 'age': 30}, {'nom': 'Charlie', 'age': 35}]
Liste vide
assert trier_employes([], 'nom') == []

+ 0 tests cachés

Indices (3 disponibles)

solution.py