Круговая зависимость от импорта в Python

Вот плагин , который действительно перетаскивает строки таблицы

72
задан CharlesB 25 February 2013 в 15:12
поделиться

2 ответа

Если a зависит от c, а c зависит от a, разве они не являются одной и той же единицей тогда?

Вам действительно следует выяснить, почему вы разделили a и c на два пакета, потому что либо у вас есть код, который вы должны разделить на другой пакет (чтобы они оба зависели от этого нового пакета, но не друг от друга), либо вы должны объединить их в один пакет.

61
ответ дан 24 November 2019 в 12:27
поделиться

Вы можете отложить импорт, например, в a / __ init __. Py :

def my_function():
    from a.b.c import Blah
    return Blah()

, то есть отложить импорт до тех пор, пока он действительно не понадобится. Тем не менее, я также хотел бы внимательно изучить определения / использования моих пакетов, поскольку циклическая зависимость, подобная указанной, может указывать на проблему дизайна.

152
ответ дан 24 November 2019 в 12:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: