À propos des énumérations de Python
Comme indiqué précédemment, les énuméres sont des objets ayant des valeurs constantes. Ils ont des noms symboliques ou représentatifs attachés à leurs valeurs respectives. Ils sont d'une manière similaire à d'autres variables Python, mais viennent avec des fonctionnalités uniques comme les objets de type type et le regroupement. Dans Python, les énuméraires sont toujours représentés en utilisant des caractères supérieurs pour indiquer qu'ils ont des valeurs constantes. Les énumérations sont spécialement utiles dans les cas où vous avez une gamme prédéfinie de valeurs possibles et que vous devez choisir et vous référer à des choix limités dans votre logique de programme. L'utilisation des énumérations à Python peut être mieux comprise à travers des exemples. Certains d'entre eux sont expliqués ci-dessous.
Créer des énumérations
Vous pouvez créer des enums en construisant une nouvelle classe qui hérite de la classe Enum elle-même. Jetez un œil à l'échantillon de code ci-dessous:
à partir de l'énumération de l'énumérationLa première instruction importe la classe Enum à partir du module ENUM. Ensuite, une nouvelle classe appelée «Color» est construite en héritant de la classe d'énumération. Certaines variables (membres de l'énum) sont ensuite créées avec des valeurs constantes. Ces variables représentent cinq choix possibles. Les prochaines instructions d'impression montrent comment vous pouvez accéder à ces énumérations, leurs noms et valeurs. Ces déclarations sont explicites. Pour accéder à un éventuel choix d'énumération, vous pouvez utiliser la notation de points ou fournir une valeur connue comme un argument à la classe. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:
Couleur.JAUNEComme vous pouvez le voir dans la sortie, il existe une variété de façons d'accéder aux membres de l'énumération. Notez que l'appel de la fonction d'impression sur une enum renvoie sa forme de chaîne lisible par l'homme et non sa valeur. Donc, se référant à la couleur.Le jaune retournera la couleur.Jaune et non 1.
Itérer à travers les énumérations
Vous pouvez itérer via un objet de type énum et obtenir ses membres en utilisant des instructions de boucle.
à partir de l'énumération de l'énumérationÀ l'aide de la variable «C», vous pouvez accéder à chaque membre de l'objet de type d'énumération de couleur. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante.
Jaune 1Le nom des membres de l'énume doit être unique mais les valeurs en double sont autorisées
Vous ne pouvez pas créer deux membres de l'énum avec le même nom mais leurs valeurs n'ont pas de telles restrictions. L'exemple de code suivant lancera une erreur car il y a deux membres de l'énum avec les mêmes noms.
à partir de l'énumération de l'énumérationAprès avoir exécuté l'exemple de code ci-dessus, vous devez obtenir une erreur similaire à celle:
Fichier "/ usr / lib / python3.9 / Enum.py ", ligne 133, dans __setItem__Comme vous pouvez le voir dans la sortie, les noms en double ne sont pas autorisés pour les membres de l'Enum. Cependant, le code suivant est valide lorsque deux membres de l'énum ont les mêmes valeurs.
à partir de l'énumération de l'énumérationSi vous souhaitez également forcer des valeurs uniques pour les membres de l'énum avec leurs noms, vous pouvez utiliser le décorateur «unique» pour empêcher les valeurs en double.
à partir de l'énumération de l'énumération, uniqueLe décorateur «@Unique» force les objets de type énumér. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:
Fichier "/ usr / lib / python3.9 / Enum.py ", ligne 989, en uniqueAttribuez automatiquement des valeurs aux membres de l'énumération
Si les valeurs des membres de l'Enum n'ont pas d'importance pour vous, vous pouvez utiliser la méthode «Auto» disponible dans le module ENUM pour attribuer automatiquement des nombres séquentiels aux membres de l'énumération.
à partir de Enum Import Enum, AutoComme vous pouvez le voir dans l'exemple de code abouti, au lieu d'attribuer explicitement certaines valeurs aux membres de l'énumération, la fonction automatique a été appelée lors de la création de chaque membre. La méthode automatique attribue toujours 1 comme la première valeur. Après avoir exécuté l'échantillon de code ci-dessus, vous devriez obtenir la sortie suivante:
Jaune 1Conclusion
Les objets de type enums en python vous permettent de créer des variables de style constant ayant des noms uniques. Ces variables, généralement appelées membres d'Enum, peuvent être représentées par des cordes lisibles par l'homme. Les énumérations sont particulièrement utiles lorsque vous souhaitez choisir un ou plusieurs choix dans un groupe d'options limitées.