Mac 安装 python 主要有 2 种方式,一种是通过 homebrew 命令 install,还有一种是到官网下载 mac 下的 pkg 安装包进行装载。不同方式的安装 Python,它们的彻底卸载方式也各有不同。
此外 Mac OS X(10.8+)系统中已经预先安装了Python 2.7,Mac 中很多自带的命令都是 Python 写的,所以最好不要删除自带的 Python。这也从侧面充分说明了 Python 的重要性。
homebrew 安装的 Python 彻底卸载
通过 homebrew 安装的 python 解释器等文件路径在 /usr/local/Cellar/python/X.X.X/
下,同时 python、pip 等软链接到 /usr/local/bin/pythonX
,/usr/local/bin/pipX
下。
可以通过 brew info 命令查看第三方库安装的路径:
brew info python3
通过上述命令能看到类似如下信息:
......
They will install into the site-package directory
/usr/local/lib/python3.X/site-packages
......
表明第三方库安装目录在 /usr/local/lib/pythonX.X/site-packages
下。
掌握了 homebrew 安装 Python 的情况后,彻底删除 Python 的工作,我们就有了比较清晰的头绪,具体步骤如下:
-
首先,用 homebrew 自带的卸载命令进行卸载;
brew uninstall python3
若提示拒绝(Refusing)卸载相关的信息,需要相关依赖包时,也可以在忽略依赖包的情况下,执行如下命令:
brew uninstall --ignore-dependencies python3
执行后,提示卸载成功,到如上提到的安装目录及软链接文件检查,发现相关目录及文件已删除。
-
若要把第三方库删除,需要手动操作(个人不建议删除第三方库),类似如下:
rm -r /usr/local/lib/pythonX.X
官网的 pkg 安装的 Python 彻底卸载
Mac OS 下,Python 的安装绝大多数是到官网 https://www.python.org/downloads/mac-osx/ 下载 pkg 安装包来进行 install,安装后相关路径如下:
程序文件安装路径:
/Applications/Python X.X
Python 解释器等文件安装路径:
/Library/Frameworks/Python.framework/Versions/X.X
在 Mac 上完整卸载 Python 3 为例,列出以下操作步骤。
-
首先,退出 Python 对应的应用程序并在后台关闭所有正在运行的 Python 进程。此步骤对于安全删除程序非常重要。
-
另外,建议打开“进程监视器”,并检查某些进程是否仍处于活动状态。单击“x”按钮以关闭 Python 进程。
-
然后转到 Finder 中的“应用程序”文件夹,并将 Python 移至废纸篓(垃圾桶)。请确保您完全删除 Python 卸载软件包,而不仅仅是单独的文件。
-
现在,我们已经接近了最后一个重要步骤–查找并删除您在使用 Python 时,创建的所有服务文件。服务文件存储在如下相关 Library 文件夹中。
/Library/Frameworks/Python.framework/Versions/
此外,用户文件夹中还有一些隐藏文件。找到它们,然后移到废纸篓。相关的配置文件 .bom,.plist 在 /private/var/db/receipts 下,.bom 文件记录了这个包所有的关联文件,可以使用
lsbom
命令进行查看。lsbom /private/var/db/receipts/org.python.Python.PythonApplications-3.6.bom
笔者的 case 中,列出的要删除的相关文件列表:
/private/var/db/receipts/org.python.Python.PythonApplications-3.6.bom /private/var/db/receipts/org.python.Python.PythonApplications-3.6.plist /private/var/db/receipts/org.python.Python.PythonDocumentation-3.6.bom /private/var/db/receipts/org.python.Python.PythonDocumentation-3.6.plist /private/var/db/receipts/org.python.Python.PythonFramework-3.6.bom /private/var/db/receipts/org.python.Python.PythonFramework-3.6.plist /private/var/db/receipts/org.python.Python.PythonUnixTools-3.6.bom /private/var/db/receipts/org.python.Python.PythonUnixTools-3.6.plist