Я хочу иметь базовый класс, который сделает каждый подкласс содержащим список без необходимости делать это вручную для каждого подкласса? Например, когда я создаю Subclass
из моего BaseClass
, я хочу, чтобы мой Subclass
имел список element_list
автоматически. В настоящее время я делаю это так:У каждого подкласса есть собственный список?
class BaseClass:
element_list = ['Base Element', 'More Element\'s']
def do_stuff(): pass
class Subclass(BaseClass):
# Replaces BaseClass' element_list
element_list = ['Sub Element', 'More Sub Element\'s']
def do_sub_stuff(): pass
Теперь, как он стоит, это, кажется, легко сделать вручную, но я хотел бы этот класс системы, чтобы быть максимально удобным, насколько это возможно для людей, которые не знают (в основном, только чтение учебника для создания этих подклассов), и большинство классов будут иметь пустой элемент-лист или добавить элементы, добавленные позже в код после определения класса.
Мне бы очень хотелось, чтобы у него был пустой список по умолчанию, даже если он не определен вручную в подклассе и что каждый подкласс автоматически будет иметь свой собственный уникальный список.
Возможно ли это?
как насчет возврата списка из метода, а в класс переопределения, объединить два списка, чтобы у вас были все элементы? – MightyPork
Если вы хотите, чтобы по умолчанию был пустой список, вы не могли бы установить 'element_list' в пустой список в' BaseClass'? – rlms
Какова цель этого списка? Вероятно, это лучшее решение, чем списки, если мы знаем больше о проблеме. – Daniel