Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
ENUM Klasse
Quellcode
- class Animal:
- DOG=1
- CAT=2
- x = Animal.DOG
Dynamische Variante
Definition der Funktion
Quellcode
- def enum(**enums):
- return type('Enum', (), enums)
So wird die Funktion genutzt
Quellcode
- >>> Numbers = enum(ONE=1, TWO=2, THREE='three')
- >>> Numbers.ONE
- 1
- >>> Numbers.TWO
- 2
- >>> Numbers.THREE
- 'three'
Dynamische Variante mit Sequenzen
Es können auch einfach Sequenzen unterstützt werden:
Definition der Funktion
Quellcode
- def enum(*sequential, **named):
- enums = dict(zip(sequential, range(len(sequential))), **named)
- return type('Enum', (), enums)
Nutzung wie folgt
Quellcode
- >>> Numbers = enum('ZERO', 'ONE', 'TWO')
- >>> Numbers.ZERO
- 0
- >>> Numbers.ONE
- 1