Встречается на собеседованиях • сегодня
Что такое циклический импорт в Python
Циклический импорт возникает, когда два или более модуля зависят друг от друга, создавая замкнутый круг импортов. Например, модуль A импортирует модуль B, а модуль B импортирует модуль A. Python не может корректно обработать такую ситуацию, что приводит к ошибкам или неожиданному поведению.
Пример циклического импорта:
python
# module_a.py
from module_b import func_b
def func_a():
return "Function A"
# module_b.py
from module_a import func_a
def func_b():
return "Function B"Как избежать:
- Реорганизовать код, вынеся общую логику в третий модуль.
- Использовать импорт внутри функций/методов, а не на уровне модуля.
- Применить ленивый импорт с помощью
importlibили строковых аннотаций (для типов).
Лучшая практика — проектировать модули так, чтобы зависимости были однонаправленными.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы