Как я могу использовать Homebrew для установки Python 2 и 3 на Mac?
Мне нужно иметь возможность переключаться между Python 2 и 3. Как это сделать с помощью Homebrew, поскольку я не хочу путаться с путями и попадать в неприятности.
Сейчас у меня есть 2.7, установленный через Homebrew.
Ответы
Ответ 1
Я бы использовал pyenv Вы можете установить его:
$ brew install pyenv
Чтобы включить pyenv в вашей оболочке Bash, вам нужно запустить:
$ eval "$(pyenv init -)"
Чтобы сделать это автоматически для Bash при запуске, добавьте эту строку в свой ~/.bash_profile
. 1
Использование:
Как только вы установили pyenv и активировали его, вы можете установить разные версии python и выбрать, какой из них вы можете использовать. Пример:
$ pyenv install 2.7.5
Вы можете проверить версии, с которыми вы установили:
$ pyenv versions
И вы можете переключаться между версиями python с помощью команды:
$ pyenv global 3.3.1
Также вы можете установить версию python для текущего каталога с помощью:
$ pyenv local 3.5.2
Вы можете проверить, запустив python --version
:
$ python --version
Python 3.5.2
1 Homebrew используется для указания вам сделать это при установке pyenv, но сообщение было удалено. Для Zsh и других оболочек точные этапы могут быть разными.
Ответ 2
Вы можете установить обе версии одновременно.
Для доморощенного> = 1.5.0:
С 1 марта 2018 года формула python
будет обновлена до Python 3.x, а новая формула [email protected]
будет добавлена специально для Python 2.7.
Смотрите объявление об изменениях здесь или окончательный документ об использовании Homebrew для Python здесь.
Для пожилых Homebrew:
Для Python 2.x:
brew install python
Для Python 3.x:
brew install python3
Теперь у вас будут установлены обе версии на вашем компьютере. Если вы хотите использовать версию 2, используйте исполняемый файл python
. Если вы хотите использовать версию 3, используйте исполняемый файл python3
.
Ответ 3
В настоящее время Homebrew предоставляет две разные формулы для Python 2 и 3. brew install python
устанавливает python3, а brew install [email protected]
устанавливает python2. Больше подробностей в Homebrew docs:
https://docs.brew.sh/Homebrew-and-Python
Если в настоящее время у вас установлен 2.x через Homebrew, Homebrew сообщит вам следующее:
Error: python 2.7.14 is already installed
To upgrade to 3.6.5, run 'brew upgrade python'
Если вы запускаете:
brew upgrade python
Вы должны быть в состоянии сделать:
python --version
а также
python3 --version
Чтобы увидеть, какие версии Python 2.x и 3.x установлены.
Ответ 4
Кроме того, вы можете просто ввести "python3", чтобы запустить самую последнюю версию python3.x и "python" или "python2" для запуска последней установленной версии 2.x.
Ответ 5
Есть способы использовать оба, но сегодня самое простое решение - использовать pyenv. pyenv позволяет легко переключаться между версиями. Вот что я сделал для настройки:
ШАГ 1:
Удалить все питоны с вашего Mac
brew uninstall --ignore-dependencies --force python
sudo rm -rf ~/miniconda3/
sudo rm -rf ~/.conda/
Удалите следующее из ~/.bash_profile
export PATH="/Users/ishandutta2007/miniconda3/bin:$PATH"
а также следующее из ~/.bashrc
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
export PYTHONPATH=/usr/local/lib/python2.7/site-packages/google:$PYTHONPATH
alias python="/usr/bin/python"
ШАГ 2:
Установите pyenv и нужные вам версии python
brew update
brew install pyenv
pyenv install 2.7
pyenv install 3.7.0
ЭТАП 3:
добавить pyenv init
в bash_profile
или bashrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
ШАГ 4:
Проверьте, что было установлено
pyenv versions
STEP5:
Выберите по умолчанию
pyenv global 3.7.0
Когда проекту требуется более старая версия, просто перейдите в его корневую папку и запустите
pyenv local 2.7
Ответ 6
Используйте asdf !
Баллада АСДФ
Когда-то был язык программирования
Было много версий этого
Поэтому люди написали менеджер версий для него
Переключаться между версиями для проектов
Разное, старое, новое.
Затем появилось больше языков программирования
Так что пришли больше менеджеров версий
И много команд для них
Я установил много из них
Я выучил много команд
Тогда я сказал, еще один менеджер версий
Который я напишу вместо
Итак, появился другой менеджер версий
менеджер версий asdf - https://github.com/asdf-vm/asdf
Менеджер версий настолько расширяемый
для которого каждый может создать плагин
Поддерживать их любимый язык
Больше не нужно устанавливать больше менеджеров версий
Или узнать больше команд
https://github.com/asdf-vm/asdf
https://github.com/tuvistavie/asdf-python
https://github.com/asdf-vm/asdf-plugins
Ответ 7
Я думал, что у меня такое же требование - перемещаться между версиями Python - но я достиг всего, что мне было нужно, только с помощью Python3.6, собирая из исходного кода вместо использования homebrew
.
git clone https://git.<theThingYouWantToInstall>
В зависимости от репо, проверьте, существует ли уже файл MAKE, настроенный для этой опции.
Ответ 8
Я смог просто зайти на https://www.python.org/downloads/mac-osx/ и загрузить последнюю версию Python. Он установлен вдоль бокового текущего питона в моей системе.
Ответ 9
Хорошо, я боролся с моей установкой brew Python3, потому что у меня не было pip3
sudo pip3 command not found
и поэтому я сделал
brew uninstall --force --ignore-dependencies python3
и установил обычный Python 3.6.2 из официального дистрибутива, а затем у меня был pip3, и все компоненты были в порядке.