Hi,
beim Import einiger Files kam es bei mir zu Problemen, da in A etwas aus B benötigt wurde und in B etwas aus A. Meine bisherige Lösung sieht so aus:
foo.py
1 2 3 4 5 6 | from bar import b, bar_func a = 1 def foo_func(): return bar_func() + a |
bar.py
1 2 3 4 5 6 | from foo import a, foo_func b = 2 def bar_func(): return foo_func() * b |
das ganze ist natürlich auf ein einfaches beispiel reduziert 😛
Ich kann die def, classes etc. aus den Modulen nicht anders "unterbringen" (erstens inhaltlich nicht und zweitens sind die zu stark ineinander verzahnt, eine 50kb file will ich aber vermeiden da sich daran mit mehreren personen nicht so schön arbeiten lässt - aber egal).
Auf jeden Fall sieht es jetzt so ähnlich aus:
foo.py
1 2 3 4 5 6 7 8 9 | a = None foo_func = None from bar import b, bar_func a = 1 def foo_func(): return bar_func() + a |
bar.py
1 2 3 4 5 6 7 8 9 | b = None bar_func = None from foo import a, foo_func b = 2 def bar_func(): return foo_func() * b |
Wahrscheinlich kein sauberer Weg. Was ist in so einem Fall die Regel?
LG