Для целей этого ответа я предполагаю, что y
- это модуль Python в каталоге c
.Другими словами, существует файл с именем y.py
в a/b/c
.
import y
, работающий в модуле Python в каталоге c
, если текущий рабочий каталог также c
.
В Intellij IDEA с плагином Python (во многом аналогичным PyCharm большую часть времени) текущий рабочий каталог называется «Рабочим каталогом» в каждой конфигурации Run / Debug, которую вы настроили для запуска скрипта.
import y
также будет работать, если c
находится на PYTHONPATH
.
Другой способ сделать y
доступным для оператора импорта - это превратить каталоги a
и b
в Pythonпакеты.Это означает, по крайней мере, помещение пустого файла __init__.py
в каталоги a
и b
.
Затем можно использовать a
в качестве корневого каталога для проекта и использовать:
from a.b.c import y
Стоит прочитать Подробное руководство по утверждениям импорта Python , если вы не уверены, как Python разрешает импорт.