我需要能够在Python 2和3之间来回切换。我如何使用Homebrew做到这一点,因为我不想弄乱路径并遇到麻烦。 现在我通过Homebrew安装了2.7。
答案 0 :(得分:265)
我会使用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时执行此操作,但the message was removed。对于Zsh和其他shell,精确的步骤可能会有所不同。
答案 1 :(得分:73)
您可以同时安装两个版本。
自2018年3月1日起,python
公式将升级到Python 3.x,同时将为Python 2.7添加新的python@2
公式。
请参阅changes announcement here或final doc about using Homebrew for Python here。
对于Python 2.x:
brew install python
对于Python 3.x:
brew install python3
现在,您将在计算机中安装这两个版本。如果要使用版本2,请使用python
可执行文件。如果要使用版本3,请使用python3
可执行文件。
答案 2 :(得分:9)
目前,Homebrew为Python 2和3提供了两种不同的公式。brew install python
安装python3,brew install python@2
安装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.
答案 3 :(得分:5)
或者,您可以输入“python3”来运行最新版本的python3.x和“python”或“python2”来运行最新安装的2.x版本。
答案 4 :(得分:2)
有两种方法都可以使用,但当今最简单的解决方案是使用pyenv。 pyenv允许在版本之间轻松切换。 这是我要做的设置:
STEP1:
从Mac中删除所有python
> summary.factor(survey)
F M NA's
6 8 6
从 brew uninstall --ignore-dependencies --force python
sudo rm -rf ~/miniconda3/
sudo rm -rf ~/.conda/
~/.bash_profile
以及export PATH="/Users/ishandutta2007/miniconda3/bin:$PATH"
~/.bashrc
STEP2 :
安装pyenv和所需的python版本
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"
STEP3 :
将brew update
brew install pyenv
pyenv install 2.7
pyenv install 3.7.0
添加到pyenv init
或bash_profile
bashrc
STEP4 :
检查安装了什么
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
系统(由/Users/ishandutta2007/.pyenv/version设置)
2.7
3.7.0
STEP5:
选择默认
pyenv versions
当项目需要旧版本时,只需转到其根文件夹并运行
pyenv global 3.7.0
答案 5 :(得分:0)
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
答案 6 :(得分:0)
我认为我有相同的要求 - 在Python版本之间移动 - 但是我通过构建源而不是使用homebrew
来实现我只需要Python3.6。
git clone https://git.<theThingYouWantToInstall>
根据回购,检查是否已为此选项设置了MAKE文件。
答案 7 :(得分:0)
我能够转到https://www.python.org/downloads/mac-osx/并下载最新的python。它与当前的python一起安装在我的系统中。
答案 8 :(得分:-3)
好吧,我在使用Python3的brew安装时遇到了困难,因为我没有pip3
sudo pip3 command not found
所以我做了
brew uninstall --force --ignore-dependencies python3
并从官方发行版安装了常规的Python 3.6.2,然后我有了pip3,所有组件都没问题。