Las enumeraciones en Python se implementan mediante el uso del módulo llamado » enum «. Las enumeraciones se crean mediante clases . Las enumeraciones tienen nombres y valores asociados con ellas.
Propiedades de enumeración:
1. Las enumeraciones se pueden mostrar como string o repr .
2. Las enumeraciones se pueden verificar por sus tipos usando type() .
3. La palabra clave » nombre » se utiliza para mostrar el nombre del miembro de enumeración.
Python3
# Python code to demonstrate enumerations # importing enum for enumerations import enum # creating enumerations using class class Animal(enum.Enum): dog = 1 cat = 2 lion = 3 # printing enum member as string print ("The string representation of enum member is : ",end="") print (Animal.dog) # printing enum member as repr print ("The repr representation of enum member is : ",end="") print (repr(Animal.dog)) # printing the type of enum member using type() print ("The type of enum member is : ",end ="") print (type(Animal.dog)) # printing name of enum member using "name" keyword print ("The name of enum member is : ",end ="") print (Animal.dog.name)
Producción :
The string representation of enum member is : Animal.dog The repr representation of enum member is : <Animal.dog: 1> The type of enum member is : <enum 'Animal'> The name of enum member is : dog
4. Las enumeraciones son iterables . Se pueden iterar mediante bucles
5. Las enumeraciones admiten hashing . Las enumeraciones se pueden usar en diccionarios o conjuntos .
Python3
# Python code to demonstrate enumerations # iterations and hashing # importing enum for enumerations import enum # creating enumerations using class class Animal(enum.Enum): dog = 1 cat = 2 lion = 3 # printing all enum members using loop print ("All the enum values are : ") for Anim in (Animal): print(Anim) # Hashing enum member as dictionary di = {} di[Animal.dog] = 'bark' di[Animal.lion] = 'roar' # checking if enum values are hashed successfully if di=={Animal.dog : 'bark',Animal.lion : 'roar'}: print ("Enum is hashed") else: print ("Enum is not hashed")
Producción :
All the enum values are : Animal.dog Animal.cat Animal.lion Enum is hashed
Modos de acceso: se puede acceder a los miembros de la enumeración de dos maneras
1. Por valor : – En este método, se pasa el valor del miembro de la enumeración.
2. Por nombre : en este método, se pasa el nombre del miembro de la enumeración.
También se puede acceder a un valor o nombre separado usando la palabra clave » nombre » o » valor «.
Comparación: las enumeraciones admiten dos tipos de comparaciones
1. Identidad : se verifican utilizando las palabras clave » es » y » no es «.
2. Igualdad : también se admiten las comparaciones de igualdad de los tipos » == » y » != «.
Python3
# Python code to demonstrate enumerations # Access and comparison # importing enum for enumerations import enum # creating enumerations using class class Animal(enum.Enum): dog = 1 cat = 2 lion = 3 # Accessing enum member using value print ("The enum member associated with value 2 is : ",end="") print (Animal(2)) # Accessing enum member using name print ("The enum member associated with name lion is : ",end="") print (Animal['lion']) # Assigning enum member mem = Animal.dog # Displaying value print ("The value associated with dog is : ",end="") print (mem.value) # Displaying name print ("The name associated with dog is : ",end="") print (mem.name) # Comparison using "is" if Animal.dog is Animal.cat: print ("Dog and cat are same animals") else : print ("Dog and cat are different animals") # Comparison using "!=" if Animal.lion != Animal.cat: print ("Lions and cat are different") else : print ("Lions and cat are same")
Producción :
The enum member associated with value 2 is: Animal.cat The enum member associated with name lion is: Animal.lion The value associated with dog is: 1 The name associated with dog is: dog Dog and cat are different animals Lions and cat are different
Este artículo es una contribución de Manjeet Singh . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA