推荐根据系统和需求选择工具:macOS/Linux日常开发用pyenv,数据科学用conda,Windows用Python Launcher;核心是确保python命令调用指定版本,避免直接修改系统Python。
切换 Python 版本主要取决于你用的是系统自带 Python、pyenv、conda,还是 Windows 上的 Python Launcher。方法不同,但核心思路一致:让终端执行 python 命令时调用你指定的版本。
pyenv 是最灵活的 Python 版本管理工具,适合需要频繁切换或同时使用多个版本的开发者。
brew install pyenv;Linux 可用官方安装脚本)pyenv install --list | grep "^\s*[0-9]"
pyenv install 3.11.9
pyenv global 3.11.9
pyenv local 3.10.12
pyenv shell 3.9.18
每次新开终端后,pyenv 会自动加载设置的版本。验证:运行 python --version。
如果你用 Anaconda 或 Miniconda,conda 自带环境和 Python 版本管理能力。
conda create -n myenv python=3.10
conda activate myenv
python --version 就是该环境的版本conda activate py39
注意:conda 环境中的 Python 是独立安装的,不会影响系统或其他环境。
Windows 安装 Python 3.3+ 时默认勾选“Add Python to PATH”并安装了 py 启动器,支持多版本共存。
py -0(显示类似 -3.11-64、-3.10-32)py -3.11 script.py 或 py -3.10 进入对应 REPLPY_PYTHON(如设为 3.11),或重命名/调整 PATH 中的 python.exe 顺序不推荐直接删改 python.exe,容易破坏其他工具依赖。
适用于只有两个版本、且不想装额外工具的情况(如 macOS/Linux 用户把多个 Python 编译安装在不同路径)。
which python3.9、which python3.11
export PATH="/usr/local/bin/python3.11:$PATH"
~/.zshrc(macOS Catalina+)或 ~/.bashrc(Linux)source ~/.zshrc
注意 PATH 顺序决定优先级,靠前的路径中同名命令会被优先执行。
选哪种方式,看你的系统和需求:日常开发推荐 pyenv,数据项目用 conda,Windows 用户优先试试
py launcher。关键是别直接覆盖系统 Python,避免包管理器或系统工具异常。