Вы здесь, потому что используете:
- ОС Windows версии 10+
- Python версии 3.3+
- Анаконда3
И вы хотите отредактировать свой PYTHONPATH
навсегда.
TL;DR
- Go to
C:\Users\<your_username>\Anaconda3\Lib\site-packages
- Создайте файл
python37.pth
- Отредактируйте файл, включив в него эту строку
C:\\Users\\<your_username>\\my_module
Длинная версия; Читать
Пролог
В большинстве случаев редактирование PYTHONPATH
в графическом интерфейсе настроек поможет. Уловка хорошо объяснена в этом ответе на переполнение стека.
Если вы в первую очередь хотите изменить свой путь локально, подойдет этот полезный ответ.
Слегка расширенный Арт. 1
Если у вас нет C:\Users\<your_username>\Anaconda3\Lib\site-packages
, замените C:\Users\<your_username>
на путь к Anaconda3.
Слегка расширенный Арт. 2
Если вы используете Python3.7, создайте файл с именем python37.pth
. В противном случае создайте файл с именем python<XX>.pth
для любой версии Python, которую вы используете.
- Не знаете, какая версия?
ПодC:\Users\<your_username>\Anaconda3\
найдите файл формыpython<XX>.dll
.<XX>
указывает номер версии, необходимый для присвоения имени вашему.pth
файлу. - Windows очень раздражает, и вы не можете создать файл с суффиксом
.pth
?
Такие файлы есть в папкеC:\Users\<your_username>\Anaconda3\Lib\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 часа разочарования + 1 час написания этого сообщения сэкономили вам время.
Мир.