Mac OS中如何切换python2和python3呢?

已经使用HomeBrew安装了python2和python3,但是使用python总是python2,如何切换Mac OS的python2和python3环境呢?

喜欢这个问题 | 分享 | 新建回答

回答

喷火的尾巴

Nov 28, 2023
2 赞

在Mac OS中,可以通过以下步骤来切换python2和python3:


1. 首先,打开终端(Terminal)。

2. 输入以下命令来查看当前系统中的Python版本:

python --version

3. 如果显示的是Python 2的版本信息,那么可以通过以下命令来切换到Python 3:

alias python=/usr/bin/python3

4. 如果显示的是Python 3的版本信息,那么可以通过以下命令来切换到Python 2:

alias python=/usr/bin/python2


请注意,这些命令只会临时切换系统中的默认Python版本。

如果您想要永久地切换Python版本,需要修改系统配置文件。

具体步骤如下:

1. 打开终端(Terminal)。

2. 输入以下命令来编辑bash配置文件(~/.bashrc):

vim ~/.bashrc

3. 在文件末尾添加以下行:

alias python=/usr/bin/python3

或者,如果需要切换到Python 2:

alias python=/usr/bin/python2

4. 按Ctrl+X键保存并退出编辑器。

5. 在终端中输入以下命令使更改生效:

source ~/.bashrc



备注:上面的都是以前的MacOS的处理方式,现在mac采用自研的苹果芯片后的新的MacOS中,~/.zshrc来代替以前mac的~/.bash_profile;编辑~/.zshrc即可。其他的大同小异。

vim ~/.zshrc
source ~/.zshrc




jerkzhang

Jun 4, 2019
2 赞

在Mac OS中,通过编辑 ~/.bash_profile 这个文件即可切换python2和python3环境。

使用vi命令编辑上述文件也可以,也可以直接使用open命令打开上述文件,用文本编辑器对该文件进行编辑,以open命令为例,如下所示:

$ open ~/.bash_profile

然后就能在文本编辑器中打开该文件,该文件中关于python路径的相关信息如下所示:

NPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH

PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
export PYTHONPATH

export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

主要看“PYTHONPATH”这个系统环境变量即可,其他的暂时不用管。

通过cd命令自己去/usr/local/lib这个文件夹先看看自己的python3的版本是三点几,目前很多都是3.6,但是最好还是安装3.7以上吧,包括3.7,因为3.7中会有很多重要的新特性。

下例演示中,因为系统环境安装的python3是python3.6,因此要想切换到python3,那就要把“PYTHONPATH”的“2.7”改成“3.6”即可,NPATH我也不知道是啥,反正要切换到python3,顺带把它的“2.7”也改成“3.6”,当然,也许你的环境中没有NPATH这个变量,那更好,不用管了。改完后如下所示:

NPATH=/usr/local/lib/python3.6/site-packages:$PYTHONPATH

PYTHONPATH=/usr/local/lib/python3.6/site-packages:$PYTHONPATH
export PYTHONPATH

export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin


这里并没有结束,要运行如下source命令才能生效

$ source .bash_profile

到此为止,就已经切换到了python3,输入“python3”即可运行python3程序

$ python3
Python 3.6.4 (default, Jun  4 2019, 16:05:40) 
[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>



要想改回python2,就老样子,把.bash_profile中的“3.6”再都改成“2.7”,最后再“source .bash_profile”即可生效,换回python2.7即可。

上述方法看似繁杂,实则很稳妥简单,收藏这篇回答以作备忘即可。