Я столкнулся с ситуацией, как показано ниже, где каждому классу нужен другой класс, и он создает циклическую зависимость. Я столкнулся с ситуацией этого типа, обертывая некоторый c-код, используя ctypes. В этой теме уже много сообщений, но я не нашел их полезными, мне нужен пример. Любые мысли/примеры по этому вопросу будут полезны.Как разрешить эту зависимость Circular в Python
# Module A
from B import C2
class C1(object):
def __init__(self):
self.name = "C1"
self.c2 = C2()
# Module B
from A import C1
class C2(object):
def __init__(self):
self.name = "C2"
self.c1 = C1()
# Main
from A import C1
if __name__ == "__main__":
o = C1()
print o.name
Этот код содержит бесконечную рекурсию: Параметр '__init __()' метод 'C1' безоговорочно называет' __init __() '' 'C2' и наоборот. –
Возможный дубликат [Разрешить круговую ошибку импорта в python] (http://stackoverflow.com/questions/10027011/resolve-circular-import-error-in-python). Мой пример здесь в основном такой же, как и мой ответ. –