Python не видит пакеты после установки pip - PullRequest
0 голосов
/ 13 октября 2019

Когда я запускаю следующую команду в моем виртуальном окружении

sudo pip3 install -r needs.txt

Он говорит, что пакеты были успешно установлены, но когдаЯ пытаюсь запустить или импортировать пакеты, он не может их найти.

pip3 show ничего не возвращает.

Тем не менее, когда я вручную запускаю

sudo pip3 install имя-пакета

Он устанавливаетПакет просто отлично, и он работает.

Почему не работает pip install -r needs.txt? Это всегда работало в прошлом. Теперь, когда я переустановил Python, он перестал работать.

Система: Ubuntu 14.04 Python изменен с 3.4 на 3.6.2

needs.txt

Django==2.0.8

django-debug-toolbar

channels

Отладка в терминале:

РЕДАКТИРОВАТЬ: Это не имеет смысла.

pip3 install -r needs.txt

Requirement already satisfied: pycparser in /usr/local/lib/python3.6/site-packages (from cffi!=1.11.3,>=1.8->cryptography>=2.7->autobahn>=0.18->daphne~=2.3->channels==2.3.0->-r requirements.txt (line 79)) (2.19)

$ pip3 --version

pip 19.2.3 from /home/dominic/Desktop/projects/printrender/env/lib/python3.6/site-packages/pip (python 3.6)

Я устанавливаю пакеты в моем Virtual Environemnt, используя требования pip3 install -r, и он говорит, что они уже установлены, но когда я запускаю Pip Freeze, он ничего не возвращает, как будто ничего не установлено.

Требования Pip3 install -r помещают мои пакеты в мои пакеты Python для локальных пакетов, а pip freeze ссылается на мои виртуальные пакеты env.

pip не устанавливает эти пакеты в правильном месте

Ответы [ 3 ]

1 голос
/ 13 октября 2019

Я не думаю, что вы должны использовать sudo, когда вы используете виртуальную среду. Попробуй без.

0 голосов
/ 14 октября 2019

Использование sudo было частью проблемы, и некоторые из пакетов в моем require.txt вызывали ошибки с последней версией pip.

0 голосов
/ 13 октября 2019

Я думаю, что вы создали виртуальную среду для Python 2 по ошибке, поскольку pip3 используется из /usr/local/lib/python3.6 вместо env. Вы можете создать виртуальную среду специально для python3, используя команду

virtualenv -p python3 env

Не могли бы вы попытаться создать новую виртуальную среду с помощью приведенной выше команды и посмотреть, работает ли она?

...