#python #pip #virtualenv
#python #pip #virtualenv
Вопрос:
Пытаюсь перейти с virtualenv
на venv
(python3). Также хотел бы использовать pyenv
для управления несколькими версиями python 3.x на моем Mac.
Следуя этой статье, я установил pyenv
, pyenv-virtualenv
и pyenv-virtualenvwrapper
через brew
без проблем:
brew install pyenv
brew install pyenv-virtualenv
brew install pyenv-virtualenvwrapper
Изменил мой .zsh_env.sh
в ~/.config/zsh_env.sh
вот так:
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/workspace
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
Установлены две версии Python:
➜ ~ pyenv versions
system
2.7.15
* 3.7.2 (set by /Users/ugur/.python-version)
Пытаюсь создать виртуальную среду, но получаю жалобу, которая pip
отсутствует:
➜ ~ pyenv virtualenv 3.7.2 jupyter3
pyenv: pip: command not found
The `pip' command exists in these Python versions:
2.7.15
Если я пытаюсь запустить pip
в своем терминале, я получаю ту же ошибку:
➜ ~ pip
pyenv: pip: command not found
The `pip' command exists in these Python versions:
2.7.15
pip3
кажется, установлен / замечен, хотя:
➜ ~ pip3
Usage:
pip3 <command> [options]
Commands:
install Install packages.
download Download packages.
... (omitted)
Как я могу использовать pyenv
в сочетании с venv
для управления средами и версиями python?
Редактировать
Пытался установить pip
через pip3
вот так (безуспешно):
➜ ~ pip3 install pip
Requirement already satisfied: pip in ./.pyenv/versions/3.7.2/lib/python3.7/site-packages (18.1)
You are using pip version 18.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
➜ ~ pip install --upgrade pip
pyenv: pip: command not found
The `pip' command exists in these Python versions:
2.7.15
Правка 2
Даже наложение псевдонимов на pip не помогло:
➜ ~ alias pip=pip3
➜ ~ pyenv virtualenv 3.7.2 jupyter3
pyenv: pip: command not found
The `pip' command exists in these Python versions:
2.7.15
Ответ №1:
Вы можете просто создать подобную ссылку как таковую
ln -s /usr/bin/pip3 /usr/bin/pip
Теперь вызов pip
действительно будет pip3
.
Примечание: Это не сработает, если python был установлен с brew, поскольку каталог не является /usr/bin
, как указано в комментарии ниже.
Комментарии:
1. это не сработает, если ваш python установлен через brew — питоны 3.8 и 3.9 brew имеют не pip, а скорее pip3, и не будут установлены в / usr / bin
2. Спасибо @tesch1, в какой каталог он устанавливается при использовании brew?