Я думаю, может быть, вы не знаете, что такое виртуальная среда.
Если вы поместите какой-либо модуль в директорию проекта, например, myproj/modules
, вам нужно будет добавить myproj/modules
к пути поиска, который использует Python, чтобы найти ваш модуль. Один из способов сделать это - определить или изменить переменную среды PYTHONPATH
. Во всех каталогах, перечисленных в этой переменной, будет производиться поиск модулей в дополнение к некоторому жестко заданному набору каталогов.
$ export PYTHONPATH=./myproj/modules
Однако это действительно все, что представляет собой виртуальная среда. Каталог содержит желаемую версию Python, а также любые модули, которые вы хотите использовать. Сценарий activate
, который вы запускаете для «включения» виртуальной среды, делает чуть больше, чем устанавливает значения PATH
и PYTHONPATH
, так что при каждом запуске python
используется как правильная версия, так и ваш специфичный для проекта набор модулей используется вместо любой глобальной библиотеки.