pyenv使用

11,423 阅读3分钟

以下是 Windows 下正确使用 pyenv(pyenv-win) 的详细指南,涵盖安装、配置、常用命令及常见问题解决:


一、安装与验证

1. 确保安装的是 pyenv-win

  • 卸载旧版本(如错误安装了 Unix 版):

    # 删除目录
    Remove-Item -Recurse -Force ~\.pyenv
    # 清理环境变量 `Path` 中的旧路径
    
  • 安装 pyenv-win

    # 方法1:使用 Chocolatey(推荐)
    choco install pyenv-win
    
    # 方法2:手动安装
    git clone https://github.com/pyenv-win/pyenv-win.git "$HOME\.pyenv"
    
  • 配置环境变量

    • 添加以下路径到系统环境变量 Path
      %USERPROFILE%\.pyenv\pyenv-win\bin
      %USERPROFILE%\.pyenv\pyenv-win\shims
      
    • 重启终端或执行:
      $env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")
      
  • 验证安装

    pyenv --version  # 应输出 pyenv-win 版本号,如 "pyenv 2.64.11"
    

二、安装 Python 版本

1. 查看可安装版本

pyenv install --list  # 显示所有支持版本(仅限 Windows 预编译版)

2. 安装指定版本

pyenv install 3.9.5  # 安装 Python 3.9.5(需为列表中的有效版本)

3. 解决安装问题

  • 网络问题:使用镜像源加速下载

    pyenv install 3.9.5 --mirror https://npm.taobao.org/mirrors/python/
    
  • 手动安装

    1. Python 官网 下载对应版本的 .zip 文件。
    2. 将文件放入 ~\.pyenv\pyenv-win\install_cache
    3. 执行 pyenv install 3.9.5

三、管理 Python 版本

1. 查看已安装版本

pyenv versions  # 带 * 的为当前激活版本

2. 设置全局默认版本

pyenv global 3.9.5  # 全局生效(所有目录)

3. 设置局部版本(当前目录)

pyenv local 3.9.5  # 生成 `.python-version` 文件

4. 临时切换版本(仅当前会话)

pyenv shell 3.9.5

5. 验证当前 Python 路径

pyenv which python  # 应返回 pyenv 安装的路径,如 `~\.pyenv\pyenv-win\versions\3.9.5\python.exe`

四、常用操作

1. 更新 pyenv-win

pyenv update  # 通过 Chocolatey 安装的需用 `choco upgrade pyenv-win`

2. 卸载 Python 版本

pyenv uninstall 3.9.5

3. 清理缓存和版本

pyenv rehash  # 安装新版本或工具后执行

五、虚拟环境管理(可选)

1. 使用 pyenv-virtualenv 插件

  • 安装插件

    git clone https://github.com/pyenv-win/pyenv-virtualenv.git "$HOME\.pyenv\plugins\pyenv-virtualenv"
    
  • 创建虚拟环境

    pyenv virtualenv 3.9.5 myenv  # 基于 Python 3.9.5 创建虚拟环境 `myenv`
    
  • 激活/停用虚拟环境

    pyenv activate myenv    # 激活
    pyenv deactivate        # 停用
    

六、常见问题解决

1. 切换版本无效

  • 检查路径优先级
    Get-Command python  # 确认调用的 Python 路径是否为 pyenv 的 shims 目录
    
  • 调整环境变量顺序:确保 %USERPROFILE%\.pyenv\pyenv-win\shimsPath 中优先级最高。

2. pyenv install 报错

  • 权限问题:以管理员身份运行终端。
  • 文件损坏:删除 ~\.pyenv\pyenv-win\install_cache 中的残留文件,重新安装。

3. 命令不存在(如 pip

  • 执行 rehash
    pyenv rehash
    

七、替代方案

如果 pyenv 仍不满足需求,可尝试:

  1. 原生虚拟环境
    python -m venv myenv  # 需先正确安装 Python
    .\myenv\Scripts\activate
    
  2. Anaconda/Miniconda
    conda create -n myenv python=3.9
    conda activate myenv
    

八、总结

正确使用 pyenv-win 的关键步骤:

  1. 确保安装 pyenv-win 而非原版。
  2. 安装支持的 Python 版本(检查 pyenv install --list)。
  3. 使用 global/local 切换版本,并通过 pyenv which 验证路径。
  4. 遇到问题优先检查环境变量和网络权限。

提供具体错误信息可进一步诊断问题,例如:

pyenv install -v 3.9.5  # 添加 `-v` 查看详细日志