Это делается для того, чтобы линтер не кричал на меня, но я бы хотел включить член ENUM [ПУСТОЕ] в родительский ENUM, унаследованный каждым дочерним классом.
У меня есть родительский элемент ENUM (ENUM_Blank), содержащий метод класса (FromStringToENUM), который преобразует ENUM списка с префиксом Blank, если список больше 1 (среди прочего). Каждый дочерний класс ENUM наследует этот метод и имеет первое значение BLANK. В коде это работает нормально. Но линтер жалуется, что в родительском классе не определен BLANK, и я бы предпочел, чтобы он остановился.
Поэтому мне нужен способ сообщить линтеру, что родительский класс всегда имеет BLANK в качестве члена, и еще лучше обеспечить, чтобы все дочерние элементы этого класса имели BLANK в качестве члена (хотя они не обязательно должны быть сопоставимы, я не сравниваю ЦВЕТА и ANIMAL, просто делюсь этой функцией).
Код, который работает, но Линтер кричит (в части cls.BLANK):
class ENUM_Blank(Enum):
@classmethod
def FromStringToENUM(cls, stringList: list[str]) ->list[ENUM_Blank]:
fixedList = []
if len(stringConvert) > 1: fixedList.append(cls.BLANK)
[...]
return fixedList
class COLOR(ENUM_Blank): #Inherits function
BLANK = 'Blank'
RED = 'Red'
GREEN = 'Green'
class ANIMAL(ENUM_Blank): #Inherits function
BLANK = 'Blank'
CAT = 'Cat'
DOG = 'Dog'
Предпочитаемый код:
class ENUM_Blank(Enum):
BLANK = 'Blank'
@classmethod
def FromStringToENUM(): [...]
class COLOR(ENUM_Blank): #Inherits function AND has COLOR.BLANK
RED = 'Red'
GREEN = 'Green'
class ANIMAL(ENUM_Blank): #Inherits function AND has COLOR.BLANK
CAT = 'Cat'
DOG = 'Dog'
Подробнее здесь: https://stackoverflow.com/questions/790 ... -referenci
Как создать член ENUM в родительском классе ENUM? Для методов класса, ссылающихся на значение по умолчанию ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение