Mac同时安装python2.7和python3
Mac本身自带python2.7,但根据实际使用,在安装时遇到过各种错误,而且也不是最新的2.7,为了能及时更新到最新版本,我们统一用brew重装python2.7和python3。
现在(2019.03.21)brew安装python,不指定版本的话,默认安装的是python3了,而python2.7要用python@2来安装,这个search一下就知道了。
安装python3
为了验证不指定版本安装的是python3,我们先进入Cellar
目录,该目录为brew安装的软件包所在的目录:
cd /usr/local/Cellar/
然后用以下命令查一下,python是否存在,如果你没有自己用brew安装过,应该是不存在的:
ls -l | grep python
执行以下命令安装python:
brew install python
安装完后,再看看/usr/local/Cellar/
目录下是不是有一个python了?
ls -l | grep python
既然我说默认安装的是python3,那为什么你看到的是python
目录而不是python3
目录呢?因为brew安装是有版本管理的,你进入python
目录,就能看到3.7.x
的目录,如果你更新过,那么这里应该存在多个3.7.x
,当然版本是一直在增加的,也许你看本文时已经不是3.7.x
了。
安装python3之后,直接运行python3 -V
,如果有版本出来,那么说明安装正常(一般都不会有问题)。
但也可能有问题,那就是你先安装了python2,即先执行了brew install python@2
,解决方法:
#取消python2的软链接
brew unlink python@2
#把python3链接上(注意,这里的python就是指python3,pyton2要用python@2表示,但是链接完以后,python就是2了,python3才是3,这个要注意)
brew link python
确认python3已经可以运行之后,我们来安装python3对应的pip
(python包管理工具,看情况吧,当时写文章的时候是要这么装的,后来好像会自动装上,如果已经有pip3就不用再装了):
sudo wget https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py
安装完成后,正常的话,应该是在/usr/local/bin/pip3
。
安装python2.7
先查询python2,正常的话应该是查询到python@2
brew search python2
然后再安装:
brew install python@2
注: Python2已经在2020-01-01停止支持,brew官方也已经移除(参见这里),以上search和install都无法安装了,目前(2020.05.16)安装可以直接执行以下语句(后面的步骤还是一样):
# 安装python2.7
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/86a44a0a552c673a05f11018459c9f5faae3becc/Formula/[email protected]
# 更新python2.7的pip
pip install --upgrade pip setuptools
安装完之后直接执行python -V
出来的还是自带的python,这时我们需要在~/.bash_profile
或~/.zshrc
中把它覆盖掉:
export PATH=/usr/local/bin:/usr/local/sbin:/usr/local/Cellar/python@2/2.7.15_1/bin/:$PATH
覆盖完后记得source一下:
source ~/.bashrc
或
source ~/.zshrc
其实删除系统自带的也可以,不过没必要,因为mac更新系统又会回来的,所以直接覆盖引用更彻底,自带的就让它躺在那就行,反正也占不了多少空间。