当前位置: 首页 > news >正文

linux 卸载python_Python Tips | 卸载Mac 上pkg安装的Python

使用Python开发时,大都是安装一个自己的Python, 很少使用系统自带的。一是版本老旧,另一个是怕安装开发包时和系统依赖包冲突,对系统造成不必要的破坏。Python 官方提供了Linux、mac和Windows 下Python的安装包,高版本的python安装包,在安装时是允许多版本存在的,对已有python并不会造成破坏。但早期的一些旧版本安装包,还是会覆盖已有的版本,对多版本共存支持的不是很好。

Windows 系统下还好,我们可以选择安装目录。安装错误时,可以方便的卸载。但是针对于Mac 来说,不是很友好。下边是Mac 安装包卸载的方法,适用大多数的Python版本安装包,目前最新为Python3.8.3

Mac 下 pkg 安装Python 卸载

Python3.8 卸载为例,其他版本大致相同。

一/ 删除Python文件:

sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.8

二/ 删除Python应用程序

sudo rm -rf "/Applications/Python 3.8"

三/ 还原/usr/local/bin目录下的Python连接恢复:

若该目录下有其他版本Python软连,python或python3 修改会之前版本。

# python3 修改为其他版本
ln -s ../Cellar/python/3.6.5/bin/python3 python3

删除Python3.8相关的其他模块软连。

rm -rf pip3.8
rm -rf easy_install-3.8
rm -rf 2to3-3.8

其他版本卸载时,确保/usr/bin/python还是系统自带的python(一般不会改),如果被动了,则需要将

/System/Library/Frameworks/Python.framework/Versions/Current/bin/python

做一个软链接至/usr/bin/python

四/ 删除安装包所定义的环境变量(若有)

vim ~/.bash_profile

删除

PATH="/usr/local/opt/python@3.8/bin:${PATH}"
export PATH

Mac 下推荐使用 brew 来安装Python,亦或是使用pyenv之类来管理。brew 安装不同版本的python 可使用 @ + 版本号来安装,如brew install python@3.8,pyenv的使用可参阅我另一篇文章使用 pyenv + virtualenv 打造多版本python开发环境。

参考

  • https://blog.bbzhh.com/index.php/archives/97.html

4ee9393155adec0366870a069e37d02f.png

相关文章:

  • nmon监控工具使用方法_「测试」 - 性能测试 amp; 性能监控工具nmon
  • 用python画波浪线的句子_matplotlib中的锯齿线或波浪线
  • 使用静态成员变量来计算内存中的实例化的对象数目_吊打面试官-java内存模型...
  • docker容器启动时自动启动脚本_如何在启动Jupyter Notebook时自动执行一段代码?...
  • 函数 tostring_toString() 、String() 、JSON.stringify()
  • linux 网卡配置_Linux下双网卡双IP配置
  • 全网段ip扫描工具安卓_FuzzScanner:信息搜集开源小工具
  • python爬虫xpath教程_Python爬虫Xpath语法快速入门教程!
  • h5弹框滑动 ios_稍微整理了几个经常在H5移动端开发遇到的东西
  • python获取安卓文字_Python玩转emoji
  • excel函数_分享Excel常用函数500例及Excel常用函数妙用精典案例!
  • fidic银皮书_FIDIC银皮书在国内工程总承包项目的适用(下)
  • 如何将代码变成应用程序_如何优雅的将数据库表逆向生成代码
  • macos sierra怎么升级到catalina_macOS 逐渐 iOS 化?到底是焕然一新,还是用力过猛...
  • range函数python三个参数_python内置函数之range()
  • @angular/forms 源码解析之双向绑定
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • 【面试系列】之二:关于js原型
  • 5、React组件事件详解
  • android图片蒙层
  • css属性的继承、初识值、计算值、当前值、应用值
  • JavaScript中的对象个人分享
  • KMP算法及优化
  • LeetCode29.两数相除 JavaScript
  • Linux下的乱码问题
  • October CMS - 快速入门 9 Images And Galleries
  • Python_网络编程
  • unity如何实现一个固定宽度的orthagraphic相机
  • 工程优化暨babel升级小记
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 前端工程化(Gulp、Webpack)-webpack
  • 在Docker Swarm上部署Apache Storm:第1部分
  • # Java NIO(一)FileChannel
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (poj1.3.2)1791(构造法模拟)
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (转)大型网站的系统架构
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .net 提取注释生成API文档 帮助文档
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • .net访问oracle数据库性能问题
  • .net连接oracle数据库
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .Net语言中的StringBuilder:入门到精通
  • .sh 的运行
  • /3GB和/USERVA开关
  • @Import注解详解
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件
  • [Android开源]EasySharedPreferences:优雅的进行SharedPreferences数据存储操作
  • [BUUCTF]-PWN:[极客大挑战 2019]Not Bad解析
  • [BZOJ4566][HAOI2016]找相同字符(SAM)
  • [CTSC2014]企鹅QQ