Python взаимозависимые классы (круговые зависимости) - PullRequest
15 голосов
/ 19 июня 2011

Я много искал, но я нахожу в основном примеры рекурсивного программирования на python.Итак, вот вопрос:

Как мне этого добиться?

class A:
    b = B()

class B:
    a = A()

1 Ответ

9 голосов
/ 19 июня 2011

В Python все динамично - даже объявления классов.Ничто не мешает вам изменять содержимое класса после первоначального объявления:

class A:
    pass

class B:
    a = A()

A.b = B()

Примечание: если вы не очень хорошо знакомы с Python, ключевое слово pass просто позволяет вам ничего не говорить здесь'- это не важно, если класс А не такой пустой, как в этом примере!

...