Как мы установили в разделе комментариев, ваша проблема не в неправильной настройке виртуальной среды, но стоит упомянуть о возможном решении для других, кто может столкнуться с этим вопросом в будущем.
Проблема с Виртуальный env, вызываемый из другого виртуального каталога env, является частым признаком копирования виртуального каталога env из одного места в другое. Этого следует избегать! Причиной этого является переменная VIRTUAL_ENV
, жестко запрограммированная в скрипте [venv_dir]/bin/activate
. Поэтому всегда проверяйте, что эта переменная указывает на действительный каталог.
Решение для OP
Чтобы вывести список пакетов из виртуальной среды only , вам необходимо использовать --local
флаг для pip freeze
или pip list
. Вы можете найти это в документации:
-l, --local
Если в virtualenv есть глобальный доступ, не перечисляйте глобально установленный пакеты.
Ключевая фраза: global access . Возможная причина, по которой pip продолжает находить пакеты, находящиеся вне вашей виртуальной среды, могут быть переменными среды PYTHONPATH
и PATH
. Проверь их. Все, что у вас есть на этих путях, будет видно по пунктам.