目录

终极指南Pyenv-安装与使用详解macOS,-Linux,-Windows-全平台

【终极指南】Pyenv 安装与使用详解(macOS, Linux, Windows 全平台)

引言

你好,各位 CSDN 的朋友们!作为一名开发者,你是否曾被“Python 版本地狱”所困扰?项目 A 需要 Python 3.8,项目 B 却依赖于 Python 3.10,而系统自带的又是 Python 2.7… 为了解决这个问题,市面上涌现了许多优秀的 Python 版本管理工具,而 pyenv 无疑是其中的佼佼者。

pyenv 可以让你轻松地在同一台机器上安装、管理并切换多个 Python 版本,而且它的作用范围可以是全局(global)、当前目录(local)或当前 shell(shell),实现了项目间的完美隔离。

这篇博客将为你提供一份详尽的全平台 pyenv 安装和基础使用教程,无论你用的是 macOS、Linux 还是 Windows,都能轻松上手。

一、macOS 系统安装 Pyenv

macOS 用户最幸福,因为有强大的包管理工具 Homebrew。

第 1 步:使用 Homebrew 安装 Pyenv

如果你的 Mac 上没有安装 Homebrew,请先访问 进行安装。

打开你的终端(Terminal),执行以下命令:

Bash

brew update
brew install pyenv
第 2 步:配置 Shell 环境

为了让 pyenv 生效,你需要将它初始化脚本添加到你的 shell 配置文件中。根据你使用的 shell 类型(现在 macOS 默认是 Zsh),选择对应的命令。

对于 Zsh 用户 (默认 shell):

Bash

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc

对于 Bash 用户:

Bash

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

说明

  • 第一行设置了 PYENV_ROOT 环境变量,指向 pyenv 的安装目录。
  • 第二行将 pyenv 的可执行文件目录添加到了系统 PATH 中。
  • 第三行是 pyenv 的初始化脚本,用于自动补全和 shim 功能。
第 3 步:重启 Shell 并验证

执行以下命令让配置生效,或者直接完全关闭并重新打开你的终端。

Bash

# 对于 Zsh
source ~/.zshrc

# 对于 Bash
source ~/.bash_profile

然后,通过以下命令验证 pyenv 是否安装成功:

Bash

pyenv --version

如果你能看到版本号(例如 pyenv 2.3.0),恭喜你,macOS 上的安装已经完成了!

二、Linux 系统安装 Pyenv

Linux 上的安装稍微复杂一点,主要是因为 pyenv 是从源码编译 Python 的,需要提前安装好编译依赖。

第 1 步:安装编译依赖项

根据你的 Linux 发行版,选择对应的命令。

对于 Ubuntu/Debian 系统:

Bash

sudo apt-get update; sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

对于 CentOS/RHEL/Fedora 系统:

Bash

sudo yum install -y gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite \
sqlite-devel openssl-devel xz xz-devel libffi-devel findutils

小贴士: 依赖库非常关键,如果缺少,后续 pyenv install <version> 步骤会失败。

第 2 步:使用官方脚本安装 Pyenv

官方推荐使用 pyenv-installer 脚本来安装,它会自动安装 pyenv 本体以及一些有用的插件(如 pyenv-virtualenv)。

Bash

curl https://pyenv.run | bash
第 3 步:配置 Shell 环境

和 macOS 类似,你需要把环境变量配置写入 ~/.bashrc (或 ~/.zshrc,如果你用 Zsh)。安装脚本通常会提示你执行以下操作:

Bash

# 对于 Bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc

# 如果你使用 Zsh,请将上面的 .bashrc 替换为 .zshrc
第 4 步:重启 Shell 并验证

同样,使配置生效并进行验证。

Bash

# 对于 Bash
source ~/.bashrc

# 对于 Zsh
source ~/.zshrc

# 验证安装
pyenv --version

看到版本号,就说明 Linux 环境也配置成功了!

三、Windows 系统安装 Pyenv

原生 pyenv 不支持 Windows,但社区有一个非常出色的移植版叫做 pyenv-win

第 1 步:使用 PowerShell 安装

管理员身份打开 PowerShell,然后执行以下命令来安装 pyenv-win

PowerShell

Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"

这个命令会下载安装脚本并执行,默认会将 pyenv-win 安装到 ~/.pyenv 目录。

第 2 步:配置环境变量

安装脚本会尝试自动配置环境变量,但我们最好手动检查或配置一下以确保万无一失。

使用 PowerShell (推荐):

PowerShell

# 以下命令将环境变量设置为“用户”级别
[System.Environment]::SetEnvironmentVariable('PYENV',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
[System.Environment]::SetEnvironmentVariable('PYENV_HOME',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
[System.Environment]::SetEnvironmentVariable('path', $env:USERPROFILE + "\.pyenv\pyenv-win\bin;" + $env:USERPROFILE + "\.pyenv\pyenv-win\shims;" + [System.Environment]::GetEnvironmentVariable('path', "User"),"User")

手动通过图形界面配置:

  1. 在搜索栏搜索“环境变量”,选择“编辑账户的环境变量”。

  2. 在“用户变量”中,新建或确保以下变量存在:

    • PYENV%USERPROFILE%\.pyenv\pyenv-win
    • PYENV_HOME%USERPROFILE%\.pyenv\pyenv-win
  3. 找到 Path 变量,点击“编辑”,然后“新建”两条:

    • %PYENV%\bin
    • %PYENV%\shims
  4. 一路点击“确定”保存。

第 3 步:重启终端并验证

必须完全关闭当前的 PowerShell 或 CMD 窗口,然后重新打开一个新的,这样新的环境变量才会加载。

在新窗口中执行:

PowerShell

pyenv --version

如果显示版本号,那么 Windows 上的 pyenv-win 也安装成功了!

四、Pyenv 基础使用入门

安装完成后,所有平台的使用方法都是一样的。

  1. 查看所有可安装的 Python 版本

    Bash

    pyenv install --list
  2. 安装一个指定的 Python 版本

    小贴士:国内用户下载可能会很慢,可以配置镜像来加速。

    Bash

    # 例如,安装 Python 3.10.6
    pyenv install 3.10.6
  3. 查看已安装的 Python 版本

    当前正在使用的版本会有一个 * 号标记。

    Bash

    pyenv versions
  4. 设置 Python 版本

    • 设置全局版本 (Global):所有未使用 pyenv 指定版本的 shell 都会使用这个版本。

      Bash

      pyenv global 3.10.6
    • 设置局部版本 (Local):仅对当前目录及其子目录生效。它会在当前目录创建一个 .python-version 文件。这是项目开发中最常用的方式!

      Bash

      # 进入你的项目目录
      cd my-project/
      
      # 为该项目设置 python 版本
      pyenv local 3.8.13
    • 设置 Shell 版本:仅对当前 shell 会话生效,关闭后即失效。

      Bash

      pyenv shell 3.9.5
  5. 更新 pyenv (所有平台)

    • macOS: brew upgrade pyenv
    • Linux: cd $(pyenv root) && git pull
    • Windows: pyenv update

总结

pyenv 是一个强大而灵活的工具,它将 Python 版本管理的复杂性彻底简化。通过遵循本教程,你现在应该已经成功在你的操作系统上安装并配置好了 pyenv。尤其是 pyenv local 命令,是保证项目环境一致性的利器,强烈推荐在每个项目中使用。

希望这篇 CSDN 博客能帮助你告别 Python 版本混乱的烦恼,更专注于代码本身。如果在安装过程中遇到任何问题,欢迎在评论区留言交流!

关于如何使用,请看这篇文章

PS: 是的,这又是一篇ai生成的文章,但是很好用不是吗