在macOS下升级Python几种常见方法

 更新时间:2025年10月23日 09:36:15   作者:okokabcd  
这篇文章介绍了macOS用户升级Python的几种常见方法,包括使用Homebrew、pyenv、Anaconda/Miniconda,以及从Python官网下载安装包,下面小编为大家详细说说这几种方法,需要的朋友可以参考下

在 macOS 下升级 Python 有几种常见的方法,具体取决于你最初是如何安装 Python 的。了解你的安装方式是关键。

首先,你需要知道你当前 Python 版本以及它的安装路径。

  • 检查 Python 版本:
python --version # 可能指向 Python 2.x
python3 --version # 通常指向 Python 3.x
  • 检查 Python 路径:
which python
which python3

根据你 which 命令的输出,我们可以推断出安装方式。常见的安装方式有:

  • macOS 系统自带 Python: 通常在 /usr/bin/python不建议直接修改或升级系统自带的 Python,因为它可能被 macOS 的内部工具所依赖,直接操作可能导致系统不稳定。
  • Homebrew 安装: 通常在 /usr/local/bin/python3 或 /opt/homebrew/bin/python3 (M1/M2 Mac)。这是 Mac 用户最推荐和最方便的管理 Python 的方式。
  • pyenv 安装: 通常在 ~/.pyenv/shims/python。pyenv 是一个强大的 Python 版本管理工具。
  • Anaconda/Miniconda 安装: 通常在 ~/anaconda3/bin/python 或 ~/miniconda3/bin/python。Anaconda 是一个全面的数据科学平台。
  • 直接从 Python 官网下载安装包 (pkg): 通常安装到 /Library/Frameworks/Python.framework

下面针对不同的安装方式讲解如何升级:

最推荐的方式:使用 Homebrew (如果还没有安装,强烈建议安装)

Homebrew 是 macOS 上最流行的包管理器,也是管理 Python 版本的最佳方式之一。

1. 安装 Homebrew (如果尚未安装):

打开终端并运行:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

按照屏幕上的指示完成安装。

2. 升级 Homebrew 本身:

brew update

3. 升级 Python (如果已通过 Homebrew 安装):

如果你的 Python 3 是通过 Homebrew 安装的,只需运行:

brew upgrade python

这会把 Homebrew 版的 Python 升级到最新稳定版本。

4. 如果你尚未通过 Homebrew 安装 Python 3,或者需要安装特定版本:

brew install python # 这会安装最新稳定版 Python 3

5. 确保你的 PATH 环境变量正确设置:

Homebrew 会自动将 /usr/local/bin (或 M1/M2 Mac 上的 /opt/homebrew/bin) 添加到你的 PATH 中,确保 Homebrew 安装的 Python 优先于系统自带的。在你的 ~/.zshrc (macOS Catalina及更高版本默认) 或 ~/.bash_profile (旧版本) 中确认有类似以下的行:

export PATH="/usr/local/opt/python/libexec/bin:$PATH" # 对于 Intel Mac
export PATH="/opt/homebrew/opt/python/libexec/bin:$PATH" # 对于 M1/M2 Mac

或者更通用的,确保 Homebrew 的 bin 目录在 PATH 前面:

export PATH="/opt/homebrew/bin:$PATH" # For M1/M2 Mac
export PATH="/usr/local/bin:$PATH" # For Intel Mac

更新后,运行 source ~/.zshrc 或 source ~/.bash_profile 使其生效。

6. 验证升级:

python3 --version
which python3

现在 python3 应该指向 Homebrew 安装的最新版本。

使用 pyenv (推荐用于管理多个 Python 版本)

如果你需要在同一台机器上管理多个 Python 版本(例如,项目 A 需要 Python 3.8,项目 B 需要 Python 3.10),pyenv 是一个绝佳的选择。

1. 安装 pyenv (如果尚未安装):

brew install pyenv

然后,你需要将 pyenv 初始化添加到你的 shell 配置文件。编辑你的 ~/.zshrc (或 ~/.bash_profile),添加以下行:

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"

保存文件并运行 source ~/.zshrc

2. 列出可用的 Python 版本:

pyenv install --list

3. 安装新的 Python 版本 (即升级):

选择你想要安装的最新版本,例如 Python 3.11.x:

pyenv install 3.11.x # 将 x 替换为具体的最新补丁版本,如 3.11.4

4. 设置全局或局部 Python 版本:

  • 全局设置 (对所有 shell 会话生效):
pyenv global 3.11.x
  • 局部设置 (仅对当前目录及其子目录生效):
    进入你的项目目录,然后运行:
pyenv local 3.11.x

5. 验证升级:

python --version
python3 --version
which python
which python3

pyenv 会通过修改 PATH 来“垫片” (shim) 你选择的 Python 版本。

使用 Anaconda/Miniconda

如果你使用 Anaconda 或 Miniconda 管理 Python 环境,升级方式如下:

1. 更新 conda 本身:

conda update conda

2. 升级基础环境中的 Python (不推荐,最好创建新环境):

如果你想直接升级 base 环境中的 Python,可以尝试:

conda update python

但更推荐的做法是创建新的环境来管理不同的 Python 版本。

3. 创建一个新的环境并指定 Python 版本:

conda create -n my_new_env python=3.11
conda activate my_new_env
python --version

这样你就可以在不同的环境中切换,每个环境有自己独立的 Python 版本和库。

从 Python 官网安装包 (pkg) 升级

如果你最初是从 Python 官网下载的 .pkg 安装包,你可以:

  1. 访问 Python 官网: https://www.python.org/downloads/macos/
  2. 下载最新版本的 macOS 安装程序。
  3. 运行下载的 .pkg 文件。 它会引导你完成安装,并通常会安装在 /Library/Frameworks/Python.framework 下的一个新版本目录中,并更新你的系统 PATH,使其指向最新的安装。

注意: 这种方法可能会安装多个 Python 版本在你的系统上,并且可能需要手动管理 PATH,不如 Homebrew 或 pyenv 灵活。

总结和最佳实践:

  1. 永远不要直接修改 macOS 系统自带的 Python (/usr/bin/python)。
  2. 对于大多数 Mac 用户,使用 Homebrew 是最简单、最推荐的方式来安装和升级 Python 3。
  3. 如果你需要管理多个 Python 版本用于不同的项目,使用 pyenv 是理想的选择。
  4. 如果你进行数据科学或机器学习工作,并且依赖大量的科学计算库,Anaconda/Miniconda 是一个强大的解决方案。
  5. 在升级 Python 后,记得重新安装或更新你的项目依赖 (pip install -r requirements.txt),因为 Python 版本的变化可能会影响库的兼容性。
  6. 始终在一个新的终端会话或使用 source 命令来确保 PATH 环境变量的更改生效,然后再检查 Python 版本。

选择最适合你工作流程的方法。如果你是新手,Homebrew 是一个很好的开始。

以上就是在macOS下升级Python几种常见方法的详细内容,更多关于macOS下升级Python的资料请关注脚本之家其它相关文章!

相关文章

  • jupyter 中文乱码设置编码格式 避免控制台输出的解决

    jupyter 中文乱码设置编码格式 避免控制台输出的解决

    这篇文章主要介绍了jupyter 中文乱码设置编码格式 避免控制台输出的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Python人工智能之混合高斯模型运动目标检测详解分析

    Python人工智能之混合高斯模型运动目标检测详解分析

    运动目标检测是计算机视觉领域中的一个重要内容,其检测效果将会对目标跟踪与识别造成一定的影响,本文将介绍用Python来进行混合高斯模型运动目标检测,感兴趣的朋友快来看看吧
    2021-11-11
  • pycharm与cmd中制表符不一样的问题解决

    pycharm与cmd中制表符不一样的问题解决

    本文主要介绍了PyCharm和CMD中制表符宽度不同的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • python+matplotlib绘制饼图散点图实例代码

    python+matplotlib绘制饼图散点图实例代码

    这篇文章主要介绍了python+matplotlib绘制饼图散点图实例代码,本实例是官网的一个实例,不过也很简单,大家可以参考下
    2018-01-01
  • 使用Python解析JSON的实现示例

    使用Python解析JSON的实现示例

    本文主要介绍了使用Python解析JSON的实现示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • Python 避免字典和元组的多重嵌套问题

    Python 避免字典和元组的多重嵌套问题

    这篇文章主要介绍了Python 避免字典和元组的多重嵌套,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Python基于socket实现TCP/IP客户和服务器通信

    Python基于socket实现TCP/IP客户和服务器通信

    本主要介绍了Python socket网络编程TCP/IP服务器与客户端通信的相关资料,这里对Scoket 进行详解并创建TCP服务器及TCP 客户端实例代码,需要的朋友可以参考下
    2021-06-06
  • Python如何检验样本是否服从正态分布

    Python如何检验样本是否服从正态分布

    这篇文章主要介绍了Python如何检验样本是否服从正态分布问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • python flask实现分页的示例代码

    python flask实现分页的示例代码

    这篇文章主要介绍了python flask实现分页的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • 详解Python中Addict模块的使用方法

    详解Python中Addict模块的使用方法

    Addit是一个Python模块,除了提供标准的字典语法外,Addit 生成的字典的值既可以使用属性来获取,也可以使用属性进行设置。本文将详细讲讲它的使用方法,需要的可以参考一下
    2022-05-05

最新评论