繁体   English   中英

如何使用Homebrew在Mac上安装Python 2和3?

[英]How can I use Homebrew to install both Python 2 and 3 on Mac?

我需要能够在Python 2和3之间来回切换。我如何使用Homebrew做到这一点,因为我不想弄乱路径并遇到麻烦。 现在我通过Homebrew安装了2.7。

我会用pyenv你可以安装它:

$ brew install pyenv

要在Bash shell中启用pyenv,您需要运行:

$ 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和其他炮弹,精确的步骤可能会有所不同。

您可以同时安装这两个版本。

对于Homebrew> = 1.5.0:

自2018年3月1日起, python公式将升级到Python 3.x,同时为Python 2.7添加一个新的python@2公式。

请参阅此处的更改公告此处 有关使用Homebrew for Python最终文档

对于较旧的Homebrew:

对于Python 2.x:

brew install python

对于Python 3.x:

brew install python3

现在,您将在您的计算机中安装这两个版本。 如果要使用版本2,请使用python可执行文件。 如果要使用版本3,请使用python3可执行文件。

目前Homebrew为Python 2和3提供了两种不同的公式brew install python installs python3, brew install python@2 installs python2。 Homebrew文档中的更多细节:

https://docs.brew.sh/Homebrew-and-Python

如果您目前通过Homebrew安装了2.x,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.

或者,您可以输入“python3”来运行最新版本的python3.x和“python”或“python2”来运行最新安装的2.x版本。

有两种方法可以使用,但今天最简单的解决方案是使用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 initbash_profilebashrc

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

第4步

检查已安装的内容

pyenv versions
  • system(由/Users/ishandutta2007/.pyenv/version设置)

    2.7

    3.7.0

STEP5:

选择默认值

pyenv global 3.7.0

当项目需要旧版本时,只需转到其根文件夹并运行即可

pyenv local 2.7

使用asdf

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

我认为我有相同的要求 - 在Python版本之间移动 - 但是我通过构建源而不是使用homebrew来实现我只需要Python3.6。

git clone https://git.<theThingYouWantToInstall>

根据回购,检查是否已为此选项设置了MAKE文件。

我能够访问https://www.python.org/downloads/mac-osx/并下载最新的python。 它安装在我系统中的当前python端。

好吧,我在使用Python3的brew安装时遇到了困难,因为我没有pip3

sudo pip3 command not found

所以我做到了

brew uninstall --force --ignore-dependencies python3

并从官方发行版安装了常规的Python 3.6.2,然后我有pip3,所有组件都没问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM