Забудьте о virtualenv
, используйте новый Pipenv
, который является рекомендовано Python.org
Pipenv
автоматически создает виртуальную среду для вашего проектов, а также добавляет/удаляет пакеты из вашего Pipfile
(подробнее об этом ниже) при установке/удалении пакетов.
Сначала установите pipenv, используя:
$ pip install pipenv
Затем для установки конкретных пакетов проекта сначала создайте папку проекта, а затем установите все необходимые пакеты для вашего проекта, например:
$ mkdir myproject
$ cd myproject
# install `requests` library
$ pipenv install requests
# install more libraries required for your project
$ pipenv install mysql-connector
$ pipenv install numpy
Это создаст два файла, а именно Pipfile
и Pipfile.lock
. Вы можете найти список всех установленных пакетов для текущего проекта в файле Pipfile
, а Pipfile.lock
содержит информацию о хэшах, таких как sha256
, для всех установленных пакетов и их зависимостей.
Как только вы закончите установку всех необходимых пакетов для вашего проекта, выполните:
$ pipenv shell
который запустит подоболочку в виртуальной среде. (Это делает аналогичную работу source /your/virtualenv/activate)
Затем вы можете начать кодирование. Например, вы можете сначала проверить, нормально ли работают установленные пакеты, запустив оболочку Python и импортировав пакеты, как показано ниже:
$ python
>>> import requests
# ....
Чтобы выйти из оболочки (virtualenv), просто выполните:
$ exit
Теперь вы находитесь вне виртуальной среды, созданной pipenv.
Узнайте больше об этом установке пакетов для вашего проекта @ pipenv .kennethreitz.org
person
kmario23
schedule
24.01.2018
(my_ven_test) $ pip freeze
верно? - person jojo   schedule 17.01.2018which pip
указывает на исполняемый файлpip
в каталоге virtualenv. Если нет, у вас могут возникнуть проблемы с переменной окружения PATH. - person sytech   schedule 17.01.2018echo $PATH
из virtualenv? - person heemayl   schedule 17.01.2018pip install --upgrade pip
? - person abautista   schedule 17.01.2018my_ven_test/bin/pip
указывает на правильный питон? тогда является ли путь вmy_ven_test/bin/activate
строке 42 или около того правильным путем к вашему virtualenv? если вы переместили свой virtualenv, верните его туда, где вы его создали, и запуститеvirtualenv --relocatable my_ven_test
, после чего вы сможете переместить его снова. - person jojo   schedule 17.01.2018pip
действительно присутствует в каталоге/bin
venv. Если это там, то выводwhich pip
должен быть похож на/home/hadoop/my_ven_test/bin/pip
Я бы рекомендовал, ради здравомыслия, попытаться создать еще один virtualenv и посмотреть, возникает ли у вас та же проблема. Имейте в виду, что вы не хотите переименовывать/перемещать свой venv после его создания. - person sytech   schedule 17.01.2018pip install mysql-connector==2.1.3
выполнился без ошибок? когда я запускаю его в новом venv, он терпит неудачу. - person jojo   schedule 17.01.2018freeze
. Для меня нет очевидных недостатков в вашей настройке, поэтому мой вопрос. - person jojo   schedule 17.01.2018python -m pip
, так как обычно у меня много установок Python и виртуалок.pip
должен работать сразу после установки, но указание интерпретатора Python вручную всегда должно работать. - person Alexander Huszagh   schedule 17.01.2018mysql-connector
не создаетmysql-connector
вsite-packages
, он создает каталогиmysql
иmysqlx
плюс библиотеки_mysql_connector.so
и_mysqlxpb.so
. Попробуйтеpip show mysql-connector
. - person phd   schedule 17.01.2018pip show mysql-connector
. То же самое, если я наберуpip install pandas
.mysql-connector
это просто пример - person enneppi   schedule 17.01.2018which pip
, но я его здесь не вижу. Что вы получите отwhich pip
,echo $VIRTUAL_ENV
иpwd
после активации venv? - person Nathan Vērzemnieks   schedule 21.01.2018pip -V
иpython -V
внутри venv. В вопросе предоставлено недостаточно информации. Кроме того, журнал отpip install somepkg -vvv
часто бывает полезен. - person hoefling   schedule 21.01.2018pip install mysql-connector==2.1.3
- person sureshvv   schedule 24.01.2018