我想从我的Mac OS X 10.6.4中完全删除Python 2.7。通过恢复.bash_profile,我成功地从PATH变量中删除了条目。但我还想删除Python 2.7安装包安装的所有目录、文件、符号链接和条目。我从http://www.python.org/上得到了安装包。我需要删除哪些目录/文件/配置文件条目?哪里有名单吗?
当前回答
在这里你会看到所有预安装的python版本,包括2.3、2.4甚至2.7。
/System/Library/Frameworks/Python.framework/versions
但是,即使有sudo,我不这么认为,你将能够删除他们。您将得到一个错误-操作不允许
其他回答
创建到最新版本的符号链接
ln -s -f /usr/local/bin/python3.8 /usr/local/bin/python
关闭并打开一个新终端
并尝试
python --version
Onur Güzel在他的博客文章中提供了解决方案,“从OS X卸载Python包。
您应该在终端中输入以下命令:
sudo rm -rf /Library/Frameworks/Python.framework cd /usr/local/bin Ls -l。| grep '../Library/Frameworks/Python.framework' | awk '{print $9}' | xargs sudo rm ./Library/Frameworks/Python.framework' | awk '{print $9 sudo rm -rf "/Applications/Python x.y" 其中x.y命令是安装的Python版本。根据你的问题,应该是2.7。
用Onur的话说:
警告:此命令将删除包中安装的所有Python版本。系统提供的Python不受影响。
如果您从python.org安装了多个Python版本,则再次运行第四个命令,为要卸载的每个Python版本更改“x.y”。
不需要卸载旧的python版本。
只需安装新版本,例如python-3.3.2-macosx10.6.dmg 并将python的软链接更改为新安装的python3.3
使用以下命令查看默认的python和python3.3路径
"which python"和"which python3.3"
然后删除现有的python软链接并将其指向python3.3
如果你正在考虑手动删除苹果默认的Python 2.7,我建议你先搁置,然后什么都不要做:看起来苹果很快就会为你做这件事:
Python 2.7在OSX 10.15 Catalina中已弃用
Python 2.7—以及Ruby和Perl—在Catalina中已弃用(跳到“脚本语言运行时”>“弃用”一节)
https://developer.apple.com/documentation/macos_release_notes/macos_catalina_10_15_release_notes
苹果将在OSX 10.16中删除Python 2.7
事实上,如果你什么都不做,根据Mac观察者,到OSX 10.16版本,Python 2.7将从你的系统中消失:
https://www.macobserver.com/analysis/macos-catalina-deprecates-unix-scripting-languages/
鉴于这一发现,我建议最好的做法是什么都不做,等待苹果为你抹掉它。由于Apple即将为您删除它,因此似乎不值得冒险修补您的Python环境。
注意:我看到这个问题专门与OSX v 10.6.4相关,但似乎这个问题已经成为所有有兴趣从他们的系统中删除Python 2.7的OSX人员的一个关键点,无论他们运行的是什么版本。
这是我在Mac OS上使用的方法
下载最新的Python 3。X来自https://www.python.org/downloads/mac-osx/ 安装Python 3。当你点击安装程序时,会出现安装步骤 Ln -s -f /usr/local/bin/python3.9 /usr/local/bin/python Ln -s -f /usr/local/bin/pip3 /usr/local/bin/pip 打开一个新的终端窗口并验证python——version。应该是3.x
对于第3步,通过检查哪个python的输出,确认现有python可执行文件的路径
推荐文章
- VSCode——如何设置调试Python程序的工作目录
- 定义类型的区别。字典和字典?
- 如何做一个递归子文件夹搜索和返回文件在一个列表?
- Python请求发送参数数据
- 只用一次matplotlib图例标记
- 如何获得退出代码时使用Python子进程通信方法?
- 以编程方式将图像保存到Django ImageField中
- Java“虚拟机”vs. Python“解释器”的说法?
- 检查环境变量是否存在的良好实践是什么?
- 在安装eventlet时,命令“gcc”失败,退出状态为1
- 连接一个NumPy数组到另一个NumPy数组
- 如何在Python中使用自定义消息引发相同的异常?
- 如何转换逗号分隔的字符串列表在Python?
- 如何从Python字典中提取所有值?
- 如何使用Python发送电子邮件?