Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 10, 2014 03:47:15

despair2
Зарегистрирован: 2013-12-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Отложенное связываение объектов

из-за циркуляроной зависимости модулей, b не может получить ссылку на a в момент инициализации

как можно вызвать b.a =a при первом считывании b.a ?

Офлайн

#2 Янв. 10, 2014 04:31:11

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Отложенное связываение объектов

Сделайте импорт в методе



Офлайн

#3 Янв. 10, 2014 08:16:46

despair2
Зарегистрирован: 2013-12-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Отложенное связываение объектов

FishHook
Сделайте импорт в методе

каждом?

я попробовал вот-так:
   def on_center_on_screen(self):
self.map_view=screen.screen.screen.map_view
self.on_center_on_screen=self._on_center_on_screen
self.init_action_keys()
"""
for key in self.map_action_keys:
print " imak ",key,self.map_action_keys[key],self.on_center_on_screen
if self.map_action_keys[key]==self.on_center_on_screen:
print "in map ak "
self.map_action_keys[key]=getattr(self, key)
"""
self.map_view.set_pos(self.pos[0]-self.map_view.xtiles/2,
self.pos[1]-self.map_view.ytiles/2)
print "action2"
def _on_center_on_screen(self):
self.map_view.set_pos(self.pos[0]-self.map_view.xtiles/2,
self.pos[1]-self.map_view.ytiles/2)
print "action3"
( почему-то == не сравнивал функции )

но хотелось бы найти возможность как-то вынести инициализацию ссылки на второй синглетон из каждого метода

Офлайн

#4 Янв. 11, 2014 08:58:47

Master_Sergius
Зарегистрирован: 2013-09-12
Сообщения: 271
Репутация: +  7  -
Профиль   Отправить e-mail  

Отложенное связываение объектов

По-моему это дефект планирования, который привёл к такой беде при попытке реализации.



———————————————————————————
Мой блог о семействе *nix: http://nixtravelling.blogspot.com/

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version