У меня есть класс, назовем его foo:
class Foo:
def __init__(self, attr_1, attr_2, managed_obj):
self.attr_1 = attr_1
self.attr_2 = attr_2
self.managed_obj = managed_obj
, а объектом, managed_obj
, управляет другой класс:
class Controller:
def __init__(self, *foos):
self.managed_obj = ManagedObj(self)
self.foos = [f(self.managed_obj) for f in foos]
Теперь потоквыполнение работ так, что Controller
имеет некоторый центральный контроль и контроль над Foo
объектами.Тем не менее, каждый Foo
должен иметь доступ к контроллеру managed_obj
, и я не хочу, чтобы пользователь проходил мимо этого.В настоящее время я должен построить Controller
, передав лямбду для каждого Foo
, который я хочу сгенерировать, с аргументом для managed_obj
.Мне не очень нравится эта реализация, но у меня проблемы с поиском лучшей.
У кого-нибудь есть идеи?