Mac卸载、安装Python

卸载

说明

对于删除 Python,我们首先要知道其具体都安装了什么,实际上,在安装 Python 时,其自动生成:

  • Python framework,即 Python 框架;
  • Python 应用目录;
  • 指向 Python 的连接。

对于 Mac 自带的 Python,其框架目录为:

  • /System/Library/Frameworks/Python.framework

而我们安装的 Python,其(默认)框架目录为:

  • ~/Library/Frameworks/Python.framework

卸载步骤

  1. python版本查看
$ python3 --version
Python 3.7.1
  1. 删除Python 3.7 框架:
$ ls /Library/Frameworks/Python.framework/Versions/
3.7
$ sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.7
  1. 删除Python 3.7 应用目录:
$ cd /Applications
$ sudo rm -rf Python\ 3.7/ #Python 3.7存在空格

查看launchpad中python3的IDLE就被删除了

  1. 删除 /usr/local/bin 目录下指向的Python3.7 的连接:
$ cd /usr/local/bin/ 
$ ls -l /usr/local/bin
$ rm Python3.7相关的文件和链接 #Python3.7相关的文件和链接需要你自行确认

Python3.7 对应的文件和链接最好删除干净;无法确认的文件和链接就上网搜一下bing

  1. 删除python的环境路径
$ vi ~/.bash_profile

删除Python3.7设置的环境路径。

  1. 确认python是否已经删除
$ python3
-bash: python3: command not found
  1. pip需要同样操作

遇到的问题

卸载完后执行 which python 命令时,提示:python: aliased to /usr/local/bin/python3,但是找不到在哪里配置的

在 Mac 系统中执行 which python 命令时,提示 python: aliased to /usr/local/bin/python3 说明 Python 命令被别名为 /usr/local/bin/python3。这通常是由用户或系统管理员在系统的环境变量中进行配置的。

要找到配置的位置,可以按照以下步骤进行操作:

  1. 打开终端应用程序。
  2. 在终端中输入以下命令:
echo $PATH

这将显示系统的环境变量 PATH 的值。PATH 变量包含系统查找命令的路径列表。

  1. PATH 变量的值中查找包含 /usr/local/bin 的路径。这是因为别名为 /usr/local/bin/python3 的 Python 命令通常位于 /usr/local/bin 目录中。
  2. 如果在 PATH 变量中找到了包含 /usr/local/bin 的路径,则说明 Python 命令的别名是在系统的环境变量中进行配置的。如果没有找到,则可能是在其他位置进行配置的,例如在用户的 .bashrc.bash_profile 文件中。

要修改或删除 Python 命令的别名,可以按照以下步骤进行操作:

  1. 打开终端应用程序。
  2. 如果要修改别名,可以使用以下命令:
alias python=/usr/local/bin/python3

这将将 Python 命令的别名修改为 /usr/local/bin/python3

  1. 如果要删除别名,可以使用以下命令:
unalias python

这将删除 Python 命令的别名。

安装

安装包安装

  1. 在官网下载指定版本Python:https://www.python.org/downloads/macos/
    需要选择可安装版本
    在这里插入图片描述
  2. 现在完安装包后无脑下一步即可

brew 安装

要使用 Brew 安装指定的 Python 版本和 Pip,可以按照以下步骤进行操作:

  1. 首先,确保你已经安装了 Brew。如果没有,可以通过以下命令进行安装:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  1. 然后,使用以下命令搜索可用的 Python 版本:
brew search python
  1. 选择你要安装的 Python 版本,例如 python@3.9。使用以下命令进行安装:
brew install python@3.9
  1. 安装完成后,使用以下命令检查 Python 版本:
python -V

安装 pip

  1. 接下来,安装 Pip。Pip 是 Python 的包管理工具,用于安装和管理 Python 包。使用以下命令进行安装:
python -m pip install --upgrade pip
  1. 安装完成后,使用以下命令检查 Pip 版本:
pip -V

你可以使用 Pip 来安装其他 Python 包,例如:

pip install numpy

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/192009.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mazing是什么软件?为什么选择iMazing

说起iOS设备管理工具,可能大家还有点陌生,其实就是Apple公司开发的移动设备,因其的操作系统是独特的iOS系统,所以又叫iOS设备。比如大家都在用的iPhone手机,就是这样类型的一个设备。 mazing是什么软件? iMazing是一…

【Linux】Ubuntu添加root用户

在Ubuntu中,默认情况下是禁用了root用户的登录。如果仍然想要启用root用户,并设置root用户的密码,应按照以下步骤进行操作: 一、输入sudo passwd root设置root用户密码 二、切换root用户 sudo -i su root 这两条命令均可却换至…

前端入门(四)Ajax、Promise异步、Axios通信、vue-router路由、组件库

文章目录 AjaxAjax特点 Promise 异步编程(缺)Promise基本使用状态 - PromiseState结果 - PromiseResult AxiosVue中使用AxiosAxios请求方式getpostput和patchdelete并发请求 Vue路由 - vue-router单页面Web应用(single page web application&…

Android HCI日志分析案例2

案例1--蓝牙音箱电量用完后,配对一直失败,提示PIN码不正确 基于MTK平台,通过MTKLogger开启保存HCI日志 问题定位分析 Android日志查看logcat 搜索到关键log 01-20 10:07:55.403760 978 1075 V bt_stack: [VERBOSE2:btm_inq.cc(2032)] …

Stream

什么是Stream? 也叫Stream流,是jdk8开始新增的一套API,可以用来操作集合或者数组的数据 优势:Stream流大量的结合了Lambda的语法风格来编程,提供了一种更加强大,更加简单的方式操作集合或数组中的数据&am…

详解Spring工厂是如何获取Aop中的代理对象的

😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783…

Ext4文件系统解析(一)

1、前言 熟悉Linux操作系统的都应该或多或少的了解或者使用过Ext4文件系统。 接下来,会简单介绍Ext4文件系统的一些特性和工作原理。 2、常用概念 在介绍Ext文件系统之前,先简单描述一些相关概念。 块(Block):Ext文件系统存储分配的基本单…

【探索Linux】—— 强大的命令行工具 P.19(多线程 | 线程的概念 | 线程控制 | 分离线程)

阅读导航 引言一、 Linux线程概念1. 什么是线程2. 线程的概念3. 线程与进程的区别4. 线程异常 二、Linux线程控制1. POSIX线程库2. 创建线程 pthread_create() 函数(1)头文件(2)函数原型(3)参数解释&#x…

Spring MVC学习随笔-控制器(Controller)开发详解:控制器跳转与作用域(一)

学习视频:孙哥说SpringMVC:结合Thymeleaf,重塑你的MVC世界!|前所未有的Web开发探索之旅 第五章、SpringMVC控制器开发详解 三 5.1 核心要点 3.流程跳转 5.2 JavaWeb中流程跳转的核心回顾 5.2.1 JavaWeb中流程跳转的核…

网络入门---网络编程初步认识和实践

目录标题 前言准备工作udpserver.hpp成员变量构造函数初始化函数(socket,bind)start函数(recvfrom) udpServer.ccudpClient.hpp构造函数初始化函数run函数(sendto) udpClient.cc测试 前言 在上一篇文章中我们初步的认识了端口号的作用,ip地址和MAC地址在网络通信时…

QT 中 QProgressDialog 进度条窗口 备查

基础API //两个构造函数 QProgressDialog::QProgressDialog(QWidget *parent nullptr, Qt::WindowFlags f Qt::WindowFlags());QProgressDialog::QProgressDialog(const QString &labelText, const QString &cancelButtonText, int minimum, int maximum, QWidget *…

面试 Java 基础八股文十问十答第三期

面试 Java 基础八股文十问十答第三期 作者:程序员小白条,个人博客 ⭐点赞⭐收藏⭐不迷路!⭐ 21.说下Java8的Stream流的常用方法 答: forEach遍历、find、match进行匹配reduce进行归约,比如求和,乘,除聚合…

淘宝用户体验VOC标签体系

本专题共10篇内容,包含淘宝APP基础链路过去一年在用户体验数据科学领域(包括商详、物流、性能、消息、客服、旅程等)一些探索和实践经验。 在商详页基于用户动线和VOC挖掘用户决策因子带来浏览体验提升;在物流侧洞察用户求助时间与…

计算机组成原理笔记——存储器(静态RAM和动态RAM的区别,动态RAM的刷新, ROM……)

■ 随机存取存储器 ■ 1.随机存取存储器:按存储信息的原理不同分为:静态RAM和动态RAM 2.静态RAM(SRAM):用触发器工作原理存储信息,但电源掉电时,存储信息会丢失具有易失性。 3.存储器的基本单元…

springboot监听器模式源码精讲

1.前言 很多时候我们看源码的时候看不下去,其中一个原因是系统往往使用了许多设计模式,如果你不清楚这些设计模式,这无疑增加了你阅读源码的难度。 springboot中就大量使用了设计模式,本文主要介绍其中的一种监听器模式&#xf…

数学建模-基于BL回归模型和决策树模型对早产危险因素的探究和预测

整体求解过程概述(摘要) 近年来,全球早产率总体呈上升趋势,在我国,早产儿以每年 20 万的数目逐年递增,目前早产已经成为重大的公共卫生问题之一。据研究,早产是威胁胎儿及新生儿健康的重要因素,可能会造成死亡或智力体…

深度学习 -- 神经网络

1、神经网络的历史 2、 M-P模型 M-P模型是首个通过模仿神经元而形成的模型。在M-P模型中,多个输入节点对应一个输出节点y。每个输入x,乘以相应的连接权重w,然后相加得到输出y。结果之和如果大于阈值h,则输出1,否则输出0。输入和输出均是0或1。 公式2.1: …

Redis 安装部署

文章目录 1、前言2、安装部署2.1、单机模式2.1.1、通过 yum 安装(不推荐,版本老旧)2.1.1、通过源码编译安装(推荐) 2.2、主从模式2.3、哨兵模式2.4、集群模式2.5、其他命令2.6、其他操作系统 3、使用3.1、Java 代码 —…

神经网络中的 Grad-CAM 热图(Gradient-weighted Class Activation Mapping)

Grad-CAM(Gradient-weighted Class Activation Mapping)是一种用于可视化卷积神经网络(CNN)中特定类别的激活区域的方法。其基本思想是使用网络的梯度信息来获取关于特定类别的空间定位信息。 Grad-CAM 的具体公式如下&#xff1…

Python逐步打造惊艳的折线图

大家好,Matplotlib可以快速轻松地使用现成的函数绘制图表,但是微调步骤需要花费更多精力。今天本文将介绍如何使用Matplotlib绘制吸引人的图表,实现折线图的惊艳变身。 1.数据 为了说明方法,本文使用了包含过去50年各国GDP信息的…