Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Match case avec alternatives
Dans un match/case, tu peux regrouper plusieurs valeurs dans un seul case en utilisant le pipe | (qui signifie 'ou').
Par exemple : match jour: case 'samedi' | 'dimanche': return 'weekend' case _: return 'semaine'
Ici, si jour vaut 'samedi' ou 'dimanche', le premier case est active.
Tu peux aussi capturer la valeur non matchee dans une variable au lieu d'utiliser _ : case inconnu: return f'Valeur inconnue : {inconnu}'
Écris une fonction classifier_animal(animal) qui classe un animal selon son type : 'chat' | 'chien' | 'hamster' : 'domestique' 'lion' | 'tigre' | 'ours' : 'sauvage' 'poule' | 'vache' | 'mouton' : 'ferme' tout autre animal : 'inconnu: ' suivi du nom de l'animal
Exemple : classifier_animal('chat') renvoie 'domestique' classifier_animal('dragon') renvoie 'inconnu: dragon'
Tests (3/4)
Domestique
assert classifier_animal('chat') == 'domestique'
Sauvage
assert classifier_animal('lion') == 'sauvage'
Ferme
assert classifier_animal('vache') == 'ferme'
+ 0 tests cachés
Indices (3 disponibles)
Solution officielle
def classifier_animal(animal):
match animal:
case 'chat' | 'chien' | 'hamster':
return 'domestique'
case 'lion' | 'tigre' | 'ours':
return 'sauvage'
case 'poule' | 'vache' | 'mouton':
return 'ferme'
case autre:
return f'inconnu: {autre}'