Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyOpEnIh 79 of 174 menu
◀ ▶

Наследование перечислений в ООП в Python

Перечисления, как и обычные классы, могут наследовать друг от друга. Потомок может добавить своих членов, если родительский класс еще не содержит членов перечисления.

Сделаем пустое базовое перечисление и класс-потомок с членами:

from enum import Enum class BaseStatus(Enum): pass class EmployeeStatus(BaseStatus): ACTIVE = 1 ON_LEAVE = 2 FIRED = 3

Члены объявляют в потомке, а обращаться к ним можно по имени класса-потомка:

print(EmployeeStatus.ACTIVE) # выведет EmployeeStatus.ACTIVE

Если у родителя уже есть хотя бы один член, добавить новых в подклассе нельзя: Python выдаст ошибку. Поэтому общую «болванку» без членов выделяют отдельным классом, а конкретные варианты описывают в наследниках.

Сделайте пустое перечисление BaseCategory и наследника ProductCategory с несколькими членами. Выведите один член наследника.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить