Автоматические значения перечисления в ООП в Python
Значения членов можно не задавать вручную:
модуль enum умеет подставлять их
сам. Для этого справа от имени члена
пишут вызов auto.
Подключим auto и сделаем
перечисление Color:
from enum import Enum, auto
class Color(Enum):
RED = auto()
GREEN = auto()
BLUE = auto()
Python присвоит членам последовательные числа, начиная с единицы. Проверим значения:
print(Color.RED.value) # выведет 1
print(Color.GREEN.value) # выведет 2
print(Color.BLUE.value) # выведет 3
Имена членов по-прежнему задаем сами, а числа подставляются автоматически. Так код короче, когда сами значения не важны.
Сделайте перечисление Shift
для смен работника с автоматическими
значениями. Выведите значения
всех членов.