最近在应用 Homebrew
装置软件的时候,总是提醒 macOS 版本过低。我的 Mac 是 18 年买的,始终未降级,版本还是老旧的10.13 “High Sierra”,这次索性就降级到最新版本12.6 “Monterey”。具体降级零碎的办法,到利用商店搜到macOS Monterey,间接装置即可,整个过程大略花了 2 个小时,这是背景。
系统升级后,之前零碎自带的 Python 2.7 版本没有了,对应装置目录 /System/Library/Frameworks
下也没有 Python 3 版本,另外发现 git
命令也用不了了。导致这个的起因是降级后 xcode
命令行工具不是主动装置的,须要重新安装,对应装置命令为:xcode-select --install
。xcode 装置后,python3
和 git
等命令就都能够失常应用了。
Python除了这种装置形式之外,还有其余几种装置办法,在这里对立整顿一下。
三种装置形式
1. 应用 xcode-select
装置xcode
xcode
开发者工具自带 python
。装置后,/usr/bin/python3
为对应的可执行文件。因为其在 /usr/bin/
目录下,能够把该版本当做 零碎自带版本。
装置命令:xcode-select --install
,能够应用 xcode-select -p
查看 xcode 的装置目录。
$ xcode-select -p
/Library/Developer/CommandLineTools
xcode
装置实现后,python3
也就装置好了,对应的装置目录为:/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework
这个版本作为零碎自带的,xcode 其余工具对其有依赖,所以个别不能卸载,也不必卸载。
2. 应用 Homebrew
装置
Homebrew
是用来治理第三方软件包工具,如果零碎自带的 python 版本不满足需要的话,能够应用其来装置指定的版本。
装置办法:brew install python
,该命令会默认装置最新的版本,此时是3.10.7
。当然,也能够指定具体的版本,如:brew install [email protected]
,具体反对哪些版本,能够到 https://formulae.brew.sh/ 这里查问。
装置地位:
- 装置目录:
/usr/local/Cellar/[email protected]
- 快捷方式:
/usr/local/bin/python3 -> ../Cellar/[email protected]/3.10.7/bin/python3
卸载办法:brew uninstall python
,如果被别的软件依赖不让卸载的话,能够执行 brew uninstall --ignore-dependencies python
进行强行卸载。
pip3
装置的python
包地位:/usr/local/lib/python3.10/site-packages
3. 应用官网安装包装置
如果不想用 Homebrew
装置的话,也能够自行下载对应版本的安装包进行装置,和一般的可视化软件装置形式一样。这种形式装置的 python
有图形化界面,而后面两种形式没有。
这种装置形式和
Homebrew
装置形式有个抵触的中央在于,两者都属于自定义装置,他们的可执行文件地位都是/usr/local/bin/python3
,所以个别状况下不倡议两种形式同时应用。如果必须都要装置的话,能够通过批改/usr/local/bin/python3
来指向不同的版本。
以 3.10.7
版本的装置为例。
下载地址:https://www.python.org/downlo…
下载后的安装包:python-3.10.7-macos11.pkg
,没啥说的,间接双击装置。
装置后有三个地位:
- 装置目录:
/Library/Frameworks/Python.framework/Versions/3.10
- 快捷方式:
/usr/local/bin/python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.11/bin/python3
- 应用程序:
/Applications/Python 3.10
反对装置多个不同的版本,如:2.7、3.10、3.11 等。下载对应的安装包间接装置即可。
须要卸载的话,将下面三个地位的相干装置目录和文件删除,同时复原一下PATH
,操作如下:
// 删除装置目录和文件
$ sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.10
$ sudo rm -rf /Applications/Python\ 3.10/
$ ls -l /usr/local/bin | grep '/Library/Frameworks/Python.framework/Versions/3.10' | awk '{print $9}' | tr -d @ | xargs rm
// 删除上面的配置,复原 PATH
$ vim ~/.bash_profile
...
# Setting PATH for Python 3.10
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.10/bin:${PATH}"
export PATH
...
参考资料
- Homebrew 官网:https://brew.sh/
- Homebrew 软件包:https://formulae.brew.sh/
- Python 官网软件包下载:https://www.python.org/downlo…