Путь к модулю порядка в virtualenv

Я заметил странное явление, связанное с путями dist-packages. Порядок моих путей в моей общесистемной установке Python 3 (просто работает python3 а затем печать sys.path) как следует:

/usr/local/lib/python3.4/dist-packages
/usr/lib/python3/dist-packages

т.е. путь в local является предпочтительным. Тем не менее, создание виртуальной среды и запуск python3 после активации среда дает:

/usr/lib/python3/dist-packages
/usr/local/lib/python3.4/dist-packages

Порядок явно обратный. Тем не менее, pip все равно сначала ищет локальный, что приводит к другой версии библиотеки, видимой по зависимостям pip, и другой, используемой при импорте.

Может кто-нибудь объяснить несоответствие?

РЕДАКТИРОВАТЬ:

Когда virtualenv активирован, используется пипс, установленный в virtualenv:

pip 9.0.1 from ~/.virtualenv/python3/lib/python3.4/site-packages (python 3.4)

и все же, несмотря на путь, указывающий сначала на dist-utils в /usr/lib, он разрешает зависимости с тем, что в /usr/local/lib:

pip3 install --upgrade setuptools
Requirement already up-to-date: setuptools in ./.virtualenv/python3/lib/python3.4/site-packages
Requirement already up-to-date: appdirs>=1.4.0 in ./.virtualenv/python3/lib/python3.4/site-packages (from setuptools)
Requirement already up-to-date: packaging>=16.8 in /usr/local/lib/python3.4/dist-packages (from setuptools)
Requirement already up-to-date: six>=1.6.0 in ./.virtualenv/python3/lib/python3.4/site-packages (from setuptools)
Requirement already up-to-date: pyparsing in /usr/local/lib/python3.4/dist-packages (from packaging>=16.8->setuptools)

0 ответов

Другие вопросы по тегам