Python中如何在Mac上彻底清除多余的Python版本

目前机器上有 2.7,3.4 和 3.6
运行 2.7 执行 python
运行 3.4 执行 python3
运行 3.6 执行 python3.6
能不能只留下 3.6 ?

还有就是如何干干净净清除 2.7 和 3.4,还有他们的那些包:比如 3.4 用 pip 安装了一些,3.6 用 pip3 安装了一些
Python中如何在Mac上彻底清除多余的Python版本

25 回复

mac 系统自带的 python 2.6 2.7 不能随便删,因为有些系统服务需要用到


在Mac上彻底清理多余的Python版本,最干净的方法是使用Homebrew管理,并手动清理残留文件。

首选方案(推荐):使用Homebrew管理Python 如果你用Homebrew安装了Python,可以这样清理:

# 查看已安装的Python版本
brew list | grep python

# 卸载特定版本(比如python@3.9)
brew uninstall python@3.9

# 清理所有旧版本和缓存
brew cleanup

手动清理系统残留 如果之前通过其他方式安装过Python,需要手动删除:

# 1. 删除Python框架(系统自带的别动!只删你自己装的)
sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.x  # 替换x为版本号

# 2. 删除应用程序
rm -rf /Applications/Python\ 3.x

# 3. 清理PATH中的符号链接
ls -l /usr/local/bin | grep python  # 查看链接
rm /usr/local/bin/python3.x  # 删除特定版本的链接

# 4. 删除pip安装的包(可选)
rm -rf ~/Library/Python/3.x

验证清理结果

# 查看当前有效的Python版本
which python3
python3 --version

# 查看所有可执行的python相关命令
ls -l /usr/local/bin/python*

关键提醒

  • 千万别动/usr/bin/python3,这是系统自带的
  • python3 --version确认当前版本
  • 建议用pyenv管理多版本,避免混乱

一句话建议:用Homebrew管理Python版本最省心。

为什么不用 virtualenv 呢

v 站上删除 2.7 版本作死不是一两个,你还想来一遍?

python 的向下兼容做得不好,各版本的语法有差别,建议不要删






谢谢大家,那我就留下 2.7

但是 3.4 和它的包,怎么干净清除呢,我目前只用 3.6,
3.4 应该可以清掉吧

如果以后有新机器的话,推荐还是用 conda 去管理各种版本的 python 把

对于普通用户,强烈建议用 brew 单独装一套。

brew install install python python@2

大不了 brew uninstall 两者,清理 /usr/local/lib/python{version}/site-packages/ 也是安全的。

系统包要是污染了建议还是重装吧。mac 重装还是很简单的。

建议看一下 pyenv,很方便管理多版本+多 virtualenv
https://github.com/pyenv/pyenv

尝试过清理,简直是作死.最后全部虚拟环境了

不建议删除,可以使用 conda 去管理

mac 自带的 2 版本不要动。。。。

pipenv 啊 别删自带的了

pipenv 或者 virtualenv
一般我用来维护 py2 py3 还有一个 tensorflow 专用的版本

用 pyenv 吧

2.x 不要动,没记错 xattr 命令好像就是个 py 脚本

以前不懂的时候用 ubuntu 桌面 python 是一大堆东西的依赖
sudo apt-get remove python
启动!哎我桌面呢?

用 virtualenv
随便删系统自带的会作死的

brew 安装的有时候也头疼,有时候升级别的东西作为依赖 python 也给升级了,导致之前的一些虚拟环境和软件依赖都失效了

python -m venv myvenv 创建虚拟环境

pyenv 值得拥有

虚拟环境或者 conda 管理吧,系统自带的千万别删。如果是自己安装的版本,是可以删干净的。具体也忘了。。。谷歌吧

各位, 我现在机器上已经有这三个版本了,怎么加到 conda 里去管理呢?









安装 Anaconda 或 Miniconda,具体用法参看这个 https://www.jianshu.com/p/29939b94d9cc

系统自带的 python 让系统自己去管理,当它不存在就好

回到顶部