(Hinweis) Der Titel ist nur eine Geschichte, keine Python-CD. Ich liebe es lieber.
Enum wurde in Python 3.4 eingeführt und kann Instanzvariablen und -methoden enthalten. Sie müssen Java Enum nicht mehr beneiden.
Aufzählung mit Methode
from enum import Enum
class JavaLikeEnum(Enum):
foo = ('foo_name', 50)
bar = ('bar_name', 100)
def __init__(self, item_name, price):
self.item_name = item_name
self.price = price
def with_tax(self):
return self.price * 1.08
print(JavaLikeEnum.foo.with_tax())
print(JavaLikeEnum.bar.with_tax())
Das Paket für den Backport wird von pip bereitgestellt, daher ist Python 3.3 oder früher in Ordnung. Lassen Sie es uns von nun an hart nutzen.
python
% pip search enum34
enum34 - Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7, 2.6, 2.5, and 2.4