Вы читаете эту статью, потому что пользуетесь:
- Windows 10+
- Python 3.3+
- Anaconda3
… и хотите изменить PYTHONPATH
.
Краткая инструкция
- Откройте
C:Users<your_username>Anaconda3Libsite-packages
- Создайте файл
python37.pth
- Измените файл и добавьте в него строку
C:\Users\<your_username>\my_module
Подробное объяснение
Пролог
В большинстве случаев достаточно изменения PYTHONPATH
из GUI настроек. Почему так — подробно объясняется на Stack Overflow.
Небольшое пояснение по п.1
Если у вас нет C:Users<your_username>Anaconda3Libsite-packages
, то замените C:Users<your_username>
на путь к Anaconda 3.
Небольшое пояснение по п.2
Если вы работаете в Python 3.7, то создайте файл под названием python37.pth
. Для остальных версий создавайте файл python<XX>.pth
.
- Не знаете, в какой версии работаете?
Поищите похожий наpython<XX>.dll
файл вот здесь:C:Users<your_username>Anaconda3
. Название версии указано в<XX>
. Его нужно присвоить файлу.pth
. - Windows действует на нервы и не дает создать файл с расширением
.pth
?
Такие файлы есть в папкеC:Users<your_username>Anaconda3Lib site-packages
. Скопируйте один из этих файлов и измените его расширение. - Прочитали где-то, что лучше создавать
._pth
, а не.pth
?
Файл._pth
полностью заменяет существующий путь. А.pth
добавляет свое содержимое к уже существующему пути. Более подробно объясняется здесь.
Небольшое пояснение по п.3
Предположим, что SuperCoolClass
, который вы хотите импортировать, находится в C:Users<your_username>my_project_folder my_awesome_file.py
.
Тогда откройте недавно созданный файл python<XX>.pth
в своем любимом текстовом редакторе (пожалуйста, не говорите, что это Vim!) и добавьте туда вот эту строку:C:\Users\<your_username>\my_project_folder
.
Да-да, с этими раздражающими двойными слешами \
.
И да, без кавычек “”
.
Вот и все.
Теперь вы, как любой нормальный человек, сможете импортировать файлы, откуда угодно:
from my_awesome_file import SuperCoolClass
.
Эпилог
Добавлять здесь особо нечего. Надеюсь, 2 часа нервотрепки и час на написание статьи сэкономят ваше время. Удачи.
Специально для сайта ITWORLD.UZ. Новость взята с сайта NOP::Nuances of programming