Как импортировать пакеты и модули из разных мест в моем проекте, не перезагружая PYTHONPATH (потому что это похоже на «взломанное» решение).Python: импорт из вашего проекта без установки PYTHONPATH вручную
Например, если я следующую структуру каталогов:
proj
├── __init__.py
├── important_file.py
└── subdirectory/
├── __init__.py
└── script.py
Как импортировать important_file.py изнутри script.py? Могу ли я как-то указать в своем проекте, что proj
- это мой корневой каталог, так что я могу импортировать важный файл с import proj.important_file
?
Почему вы когда-либо использовали 'PYTHONPATH' для относительного импорта в пакеты? Только 'from .. import module' - это все, что необходимо, поскольку вопрос OP сформулирован. – Iguananaut
@Iguananaut, вы не должны делать относительный импорт вообще. Конечно, не имеет смысла делать ОБА. Я отредактировал для уточнения –
Я не согласен - относительный импорт хорош, если это часть политики проекта. Просто потому, что Гвидо не любит их, это не делает их неправильными, или они не будут частью языка. – Iguananaut