Ceci est un texte traduit automatiquement qui peut contenir des erreurs !
Les énumérations (enums) sont une façon de définir un type de donnée ne pouvant avoir qu’un ensemble limité de valeurs prédéfinies. Cela permet d’éviter plus facilement les erreurs, car une variable ne peut prendre que des valeurs valides.
Strictement parlant, les énumérations ne servent pas à la validation, mais elles nous aident à limiter les valeurs acceptées pour une variable, ce qui contribue ainsi à prévenir les erreurs.
Par exemple, si vous avez une classe représentant une voiture, vous pouvez utiliser une enumération pour définir les couleurs possibles de cette voiture :
from enum import Enum
class CarColor(Enum):
RED = "red"
BLUE = "blue"
GREEN = "green"
BLACK = "black"
WHITE = "white"
class Car:
def __init__(self, make: str, model: str, year: int, color: CarColor):
self.make = make
self.model = model
self.year = year
self.color = color
Pourquoi ?
Notre IDE offre une meilleure auto-complétion lorsque nous utilisons des énumérations, et cela évite (rend difficile) l’attribution de valeurs invalides. Si nous essayons d’assigner une couleur qui n’est pas définie dans CarColor, Python lèvera une erreur. Cela rend le code plus robuste et plus facile à maintenir. Moins il y a d’erreurs possibles susceptibles de se produire, mieux la qualité du code est assurée.
Imaginez que nous ayons une fonction gérant les méthodes de paiement : PayPal, VISA, MASTERCARD et BITCOIN. En utilisant un enum pour les méthodes de paiement, nous pouvons garantir que la fonction ne reçoit que des méthodes de paiement valides, et non "MASTERCARDD" ou "CASH", ce qui pourrait entraîner des erreurs dans le programme.

Exercice 1 - Créer une énumération (Enum)
Créez une énumération nommée EyeColor et implémentez-la dans la classe Person du module précédent. EyeColor doit avoir les valeurs suivantes :
BLEUBRUNVERTNOISETTE
Les enums sont beaucoup utilisés dans le développement de jeux
Si vous consultez la documentation de différents jeux, vous verrez souvent qu’ils utilisent des enums pour définir des éléments tels que les armes, les ennemis, les niveaux et similaires. C’est parce que cela facilite le traitement de ces éléments dans le code et permet d’éviter plus facilement les erreurs.
