import enum
#@enum.unique
class Status(enum.Enum):
ACTIVE = 1
RENAME_ACTIVE = 1 #J'obtiens une erreur si j'ai un décorateur
#ACTIVE =2 erreur se produit
INACTIVE =2
RUNNING = 3
print(Status.ACTIVE)
#print(Status.STOPPING)J'obtiens une erreur
print(Status.RENAME_ACTIVE) #Retours ACTIF
print(repr(Status.ACTIVE))
print(Status.ACTIVE.name) #ACTIVE
print(Status.ACTIVE.value) #1
for s in Status:
print(s)
print(type(s))
print(Status(1)) #Status.ACTIVE
Résultat de l'exécution:
Status.ACTIVE
Status.ACTIVE
<Status.ACTIVE: 1>
ACTIVE
1
Status.ACTIVE
<enum 'Status'>
Status.INACTIVE
<enum 'Status'>
Status.RUNNING
<enum 'Status'>
Status.ACTIVE
import enum
class Status(enum.IntEnum):
ACTIVE = 1
INACTIVE =2
RUNNING = 3
print(Status.ACTIVE) # Status.ACTIVE
print(type(Status.ACTIVE)) # <enum 'Status'>
print(Status.ACTIVE == 1) #Elle sera remplacée par une valeur numérique uniquement lorsqu'elle sera jugée vraie.
import enum
class Perm(enum.IntFlag):
R = 4
W = 2
X = 1
print(Perm.R | Perm.W) # Perm.R|W
print(repr(Perm.R | Perm.W | Perm.X)) # <Perm.R|W|X: 7>
RWX = Perm.R | Perm.W | Perm.X
print(Perm.W in RWX) # True