Enum, IntEnum¶
Convenient constructs for defining predetermined enumerations.
In [2]:
from enum import Enum, auto
import random
class Currency(Enum):
euro = 1
us_dollar = 2
yuan = auto()
local_currency = Currency.us_dollar
print(local_currency)
local_currency = Currency['yuan'] # May raise a KeyError exception
print(local_currency)
local_currency = Currency(1) # May raise a KeyError exception
print(local_currency)
print(local_currency.name)
print(local_currency.value)
list_of_members = list(Currency)
member_names = [e.name for e in Currency]
member_values = [e.value for e in Currency]
random_member = random.choice(list(Currency))
print(list_of_members, '\n',
member_names, '\n',
member_values, '\n',
random_member)
Currency.us_dollar Currency.yuan Currency.euro euro 1 [<Currency.euro: 1>, <Currency.us_dollar: 2>, <Currency.yuan: 3>] ['euro', 'us_dollar', 'yuan'] [1, 2, 3] Currency.euro