macOS下怎么安装Python 3.9.6?pkg安装包与Homebrew方法详解

不晚
不晚
发布时间:2026-10-25 | 4人浏览过
原创
在 macOS 上安装特定版本 Python 3.9.6,主要有两条稳妥的解决路径:追求最简单可靠且支持 Apple Silicon/Intel 双架构的原生安装,首选 Python 官方提供的 universal2 格式 .pkg 安装包;若日常依赖包管理器并需要严格锁定项目依赖,则推荐使用 Homebrew 配合 pyenv 完成针对 3.9.6 的源码编译与多版本隔离。本文将完整拆解这两种方式的具体操作步骤、环境配置与避坑要点。

一、版本背景与安装方案选择依据

Python 3.9.6 是一个非常典型的维护节点版本。许多机器学习框架(例如部分特定版本的 TensorFlow)、旧版跨平台工程以及 Xcode Command Line Tools 的内部绑定工具链都曾将其作为标准基线。当开发团队或既有项目指明要求 3.9.6 时,过高或过低的微版本都可能带来不可预测的 C 扩展编译兼容性问题。

在 macOS 环境下安装 Python,常见的一个误区是直接运行 brew install python@3.9。Homebrew 的核心原则是维护每个次版本的“最新发布”(例如 3.9 分支会更新到 3.9.18 或更新小版本),默认不会保留 3.9.6 的旧 Formula。因此,若要精确安装 3.9.6,必须根据需求场景选择正确的安装策略。

macOS下怎么安装Python 3.9.6?pkg安装包与Homebrew方法详解
图 1:macOS 下安装 Python 3.9.6 的两种典型方案对比

由上图可见,如果仅仅是为了快速获得一个能直接运行的 Python 3.9.6 环境,采用官方 .pkg 安装包是最稳妥、耗时最短的方案;如果是日常使用命令行进行多项目开发且配置了 Homebrew 生态,通过 pyenv 精确安装 3.9.6 则更具灵活性。

二、方法一:使用官方 pkg 安装包安装(推荐首选)

Python 官方针对 3.9.6 版本发布了专为 macOS 打造的原生安装包 python-3.9.6-macos11.pkg。该安装包是 Universal 2 格式,内置对 Apple Silicon(M1/M2/M3 等 arm64)和 Intel(x86_64)双架构的原生支持,安装过程不需要额外编译。

1. 下载官方安装包

可以直接在终端使用 curl 下载 Python 官方源中的 3.9.6 安装包,也可以通过浏览器前往 Python 官方历史发布页下载。以下是在终端执行的下载命令:

curl -O https://www.python.org/ftp/python/3.9.6/python-3.9.6-macos11.pkg

2. 运行图形化向导或命令行安装

下载完成后,双击 python-3.9.6-macos11.pkg 打开系统安装向导,一路点击“继续”并同意许可协议,输入管理员密码完成安装。

如果你更喜欢在终端纯命令操作,也可以执行系统安装器命令:

sudo installer -pkg python-3.9.6-macos11.pkg -target /
示例输出
installer: Package name is Python
installer: Upgrading at base path /
installer: The upgrade was successful.

3. 运行证书安装脚本(关键步骤)

macOS 官方包自带的 Python 不会直接读取系统的钥匙串根证书,这会导致在后续执行 pip install 或使用 urllib 抓取 HTTPS 资源时抛出 SSL: CERTIFICATE_VERIFY_FAILED 错误。因此,安装完成后必须执行 Python 自带的证书提取脚本:

open "/Applications/Python 3.9/Install Certificates.command"

该脚本会自动下载并安装最新的 certifi 根证书,并在 Python 运行库目录中建立正确的软链接。

macOS下怎么安装Python 3.9.6?pkg安装包与Homebrew方法详解
图 2:官方 pkg 安装包的标准安装操作步骤

安装完成后,Python 3.9.6 的核心程序保存在:
/Library/Frameworks/Python.framework/Versions/3.9/
同时,安装程序会在 /usr/local/bin 下创建指向该版本的软链接:python3.9 与 pip3.9。

三、方法二:使用 Homebrew 与 pyenv 精确编译安装

很多读者会习惯性执行 brew install python@3.9。需要注意的是,Homebrew 官方仓库中的 Formula 会随着上游维护自动升级。如果直接安装 python@3.9,实际获取到的会是 3.9.18 等高位小版本,并不能精确满足 3.9.6 的版本约束。

在已经配置 Homebrew 的系统中,精确安装指定版本 Python 3.9.6 的最佳实践是:利用 Homebrew 安装编译基础库与版本管理工具 pyenv,再由 pyenv 完成 3.9.6 的精确源码编译与管理。

1. 通过 Homebrew 准备基础环境与依赖

打开终端,首先更新 Homebrew 并安装 pyenv 及其编译所需的依赖库(尤其是 openssl 和 readline):

brew update
brew install pyenv openssl readline xz zlib

2. 传递编译参数并安装 Python 3.9.6

在 Apple Silicon(M1/M2/M3)或 macOS Monterey/Ventura/Sonoma 等较新系统上编译早期的 Python 3.9.6 时,系统可能找不到 Homebrew 安装的 OpenSSL 路径。因此,在执行编译前需要显式指定编译标志(C/C++ 预处理头文件与链接库路径):

# 导出 Homebrew 的 openssl 与 readline 路径
export LDFLAGS="-L$(brew --prefix openssl@1.1)/lib -L$(brew --prefix readline)/lib"
export CFLAGS="-I$(brew --prefix openssl@1.1)/include -I$(brew --prefix readline)/include"

# 启动精确安装
pyenv install 3.9.6
示例输出
python-build: use openssl@1.1 from homebrew
Downloading Python-3.9.6.tar.xz...
Installing Python-3.9.6...
Installed Python-3.9.6 to ~/.pyenv/versions/3.9.6

3. 配置 pyenv 全局或局部版本

安装完成后,你可以根据需要选择将 3.9.6 设为全局默认版本,或者仅在某个项目目录下生效:

# 方案 A:在当前项目目录下局部绑定 3.9.6
cd /path/to/your/project
pyenv local 3.9.6

# 方案 B:设置当前用户全局默认版本
pyenv global 3.9.6
macOS下怎么安装Python 3.9.6?pkg安装包与Homebrew方法详解
图 3:Homebrew 提供依赖库与 pyenv 进行多版本分流的协同流程

四、环境变量配置与正确验证

无论是通过官方 pkg 安装还是通过 pyenv 编译安装,macOS 的终端环境(默认采用 zsh)都需要确保 PATH 能够正确命中你所期望的 Python 二进制路径。

1. 针对官方 pkg 安装的环境配置

官方安装包默认会在 /usr/local/bin 生成软链接。如果你的系统 PATH 已经包含该路径,则无需额外改动。若提示找不到 python3.9,请编辑当前用户的 ~/.zshrc 文件:

# 打开 zsh 配置文件追加 PATH
echo 'export PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

2. 针对 pyenv 方案的环境配置

使用 pyenv 时,必须将 pyenv 的 shim 垫片层注入到 shell 中,否则即使执行了 pyenv global 3.9.6,系统也无法重定向 python3 命令:

# 写入 pyenv 环境变量初始化
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
source ~/.zshrc

3. 验证安装结果与架构

完成配置后,打开全新的终端标签页,逐项执行以下验证指令:

# 1. 验证版本号
python3.9 --version
python3 -V

# 2. 验证执行文件来源路径
which python3.9

# 3. 验证对应 pip 版本
python3.9 -m pip --version

# 4. 验证运行架构 (arm64 或 x86_64)
python3.9 -c "import platform; print(platform.machine())"
预期执行输出示例
Python 3.9.6
/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 (或 ~/.pyenv/shims/python3.9)
pip 21.1.3 from .../lib/python3.9/site-packages/pip (python 3.9)
arm64 (在 Apple Silicon 上) 或 x86_64 (在 Intel 芯片上)

五、常见问题排查与版本共存建议

在 macOS 上管理 Python 时,最容易遇到的是系统自带 Python 保护、SSL 证书失效以及包安装污染等问题。针对这些情况,推荐以下处理规范:

1. 不要修改系统预置的 Python 环境

macOS 系统内部(如 Xcode CLT)可能在 /usr/bin/python3 放置了一个系统预留的 Python 存根。请切记绝对不要尝试使用 sudo 删除或覆盖 /usr/bin/python3。macOS 的 SIP(系统完整性保护)机制会拦截该行为,而且修改系统路径可能导致系统底层脚本异常。始终通过在用户配置文件中调整 PATH 优先级来引用自己安装的版本。

2. 项目级依赖隔离(使用 venv)

无论采用 pkg 还是 pyenv,都不建议直接在全局 Python 3.9.6 环境下无节制地执行 pip install。最佳做法是在具体项目根目录下创建独立的虚拟环境:

# 进入目标工程目录
cd ~/projects/my-analysis

# 使用指定的 3.9.6 创建虚拟环境
python3.9 -m venv .venv

# 激活虚拟环境
source .venv/bin/activate

# 此时 pip 仅会安装包到当前虚拟环境
pip install --upgrade pip
macOS下怎么安装Python 3.9.6?pkg安装包与Homebrew方法详解
图 4:macOS 下 Python 命令解析的优先级与目录层级架构
总结备忘: 安装 Python 3.9.6 时,若追求简单省心,直接下载官方 .pkg 并运行证书脚本;若项目需要多版本协同,使用 brew install pyenv 并在传递 OpenSSL 编译参数后安装 3.9.6。无论采用哪种方式,配置好终端 PATH 并结合 venv 进行工程隔离,都是保持 macOS 开发环境清晰稳定的关键。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表