Является ли разбивка методов класса по разным файлам хорошей практикой?
Является ли разбивка методов класса по разным файлам хорошей практикой?
Ответы (1 шт):
Автор решения: Amgarak
→ Ссылка
Не думаю что это хорошая практика, но сама идея мне показалась интересной ?
Внимание "фокус на питоне" 3, 2, 1...
class Root():
def __init__(self):
self.root = "Go-go-go"
self.back = "ups"
self.run = lambda: go(self)
def set_new_function(self, func):
setattr(self, func.__name__, func.__get__(self))
def __call__(self, func):
setattr(self, func.__name__, func.__get__(self))
def new_function(self):
print(f"Моя новая функция + {self.back}")
def go(self):
print(self.root)
root = Root()
root.run()
root.set_new_function(new_function)
print(dir(root))
root.new_function()
@root
def new_function_two(self):
print(f"Функция добавленная через декоратор + {self.root}")
root.new_function_two()
И теперь методы без проблем можно раскидать по разным файлам ?