J'essaie d'obtenir le nom d'un ENUM donné l'un de ses multiples valeurs:Obtenir le nom Enum à partir de plusieurs valeurs python
class DType(Enum):
float32 = ["f", 8]
double64 = ["d", 9]
lorsque je tente d'obtenir une valeur donnant le nom cela fonctionne:
print DType["float32"].value[1] # prints 8
print DType["float32"].value[0] # prints f
mais lorsque je tente d'obtenir le nom d'un valeur donnée que les erreurs viennent:
print DataType(8).name
print DataType("f").name
raise ValueError("%s is not a valid %s" % (value, cls.name))
ValueError: 8 is not a valid DataType
ValueError: f is not a valid DataType
Y at-il un moyen de faire cela? ou est-ce que j'utilise la mauvaise structure de données?
Les énumérations ne peuvent pas avoir plusieurs valeurs par nom. Pourquoi avez-vous besoin de cela, est-ce un de ces alias? Quand utiliserait "f" et quand "9"? –