N'abend zusammen.
Ich habe ein Problem mit dem Importieren von Modulen. Ich muss vielleicht ein bisschen ausholen, damit man versteht, um was es geht.
Mein Code besteht aus einigen Modulen. Eines der Module enthält Timer-Klassen, ein anderes Modul enthält Event-Klassen.
Bisher war es so, dass diese Timer Events ausgelöst haben. Das funktioniert so, dass die Timer ein Event-Objekt instanziieren, es in eine Queue legen und irgendwann wird es bearbeitet. Im Code des Timer Moduls habe ich daher einen Import auf die Events stehen. Das hat bislang wunderbar funktioniert.
from event import event_a, event_b ...
Nun habe ich aber mein Protokoll geändert und jetzt können Stuationen entstehen, in denen ein Event einen Timer starten muss. D.h. ich habe nun auch noch einen Import auf die Timer im Event Modul.
from timer import timer_a, timer_b
Das ergibt so etwas wie einen Kreisschluss. Timer importieren Events, Events importieren Timer und das Resultat ist diese Fehlermeldung:
ImportError: cannot import name CoSip_Timer_DHT_Registration
Gibt es irgendeinen Trick, wie ich das Problem lösen kann? Oder muss ich notgedrungen den Code umstrukturieren?
Danke für die Hilfe!
Import Problem
- nkoehring
- User
- Beiträge: 543
- Registriert: Mittwoch 7. Februar 2007, 17:37
- Wohnort: naehe Halle/Saale
- Kontaktdaten:
Ich denke mal ohne eine Umstrukturierung ist da kaum was zu machen.
Wenn du allerdings das Ausloesen eines Events bzw den Start eines Timers an einem dritten Ort machst, der beide Module vereinigt, koennte es vielleicht gehen.
Wenn du allerdings das Ausloesen eines Events bzw den Start eines Timers an einem dritten Ort machst, der beide Module vereinigt, koennte es vielleicht gehen.
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2