I am trying to import two interdependent classes called A
and B
located into a folder named 'static_classes', in order to call their static methods within my program.
A
class code:
from b import B
class A:
@staticmethod
def a():
print('a')
B.b()
B
class code:
import sys
if 'A' not in sys.modules:
from a import A
class B:
@staticmethod
def b():
print('b')
A.a()
Main code:
import sys
sys.path.append('./static_classes')
from a import A
from b import B
A.a()
B.b()
However after running the program, I get a runtime error message saying:
ImportError: cannot import name B
I don't know why it's not possible to import the class B
. What I'm missing?