Найти в Дзене
Nuances of programming

Как изменить PYTHONPATH на Windows

Оглавление

Источник: Nuances of Programming

Вы читаете эту статью, потому что пользуетесь:

  • Windows 10+
  • Python 3.3+
  • Anaconda3

… и хотите изменить PYTHONPATH.

Краткая инструкция

  • Откройте C:\Users\<your_username>\Anaconda3\Lib\site-packages
  • Создайте файл python37.pth
  • Измените файл и добавьте в него строку C:\\Users\\<your_username>\\my_module

Подробное объяснение

Пролог

В большинстве случаев достаточно изменения PYTHONPATH из GUI настроек. Почему так — подробно объясняется на Stack Overflow.

Небольшое пояснение по п.1

Если у вас нет C:\Users\<your_username>\Anaconda3\Lib\site-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>\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 часа нервотрепки и час на написание статьи сэкономят ваше время. Удачи.

— Что мы говорим ошибке импорта? — Не сегодня
— Что мы говорим ошибке импорта? — Не сегодня

Читайте также:

Читайте нас в телеграмме и vk

Перевод статьи Dalya Gartzman: How to edit PYTHONPATH on Windows