VSCode指定Python3.7仍用3.10,无法安装Real-Time-Voice-Cloning依赖
我正在运行一个要求使用Python 3.7的项目,所有依赖库版本均基于此版本。执行pip install -r requirements.txt安装依赖时出现以下错误:
× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [264 lines of output]
setup.py:66: RuntimeWarning: NumPy 1.20.3 may not yet support Python 3.10.
我的Windows机器上同时安装了Python 3.10和Python 3.7,已经做了以下操作但问题依旧:
- 在VSCode中手动选择Python 3.7作为解释器
- 将Python 3.7的路径移至系统环境变量PATH顶部
- 将Python 3.7的可执行文件重命名为Python3.7.exe
执行pip命令时仍提示当前使用的是Python 3.10,VSCode似乎没有使用正确的版本。请问我遗漏了什么?
按以下顺序排查和解决:
1. 直接指定Python版本调用pip
跳过环境变量的歧义,用Python 3.7的可执行文件直接调用对应版本的pip:
python3.7 -m pip install -r requirements.txt
这个命令会强制使用Python3.7关联的pip,避免调用到其他版本。
2. 刷新VSCode终端的环境变量
VSCode启动时会读取系统环境变量,但旧终端窗口不会自动更新。关闭所有VSCode窗口后重新打开,在终端输入以下命令验证版本:
python --version python3.7 --version pip --version
如果仍显示Python3.10,可在终端临时手动添加Python3.7路径:
set PATH=C:\Python37;C:\Python37\Scripts;%PATH%
替换成你实际的Python3.7安装路径,再执行pip安装命令。
3. 调用对应版本的pip可执行文件
系统中可能存在多个pip版本(如pip.exe、pip3.exe、pip3.7.exe),直接调用Python3.7对应的pip:
pip3.7 install -r requirements.txt
4. 用虚拟环境彻底隔离版本
创建Python3.7专属虚拟环境,完全避免版本冲突:
# 创建虚拟环境 python3.7 -m venv venv # 激活虚拟环境 venv\Scripts\activate
激活后终端会显示(venv)前缀,此时执行pip install -r requirements.txt即可确保用的是Python3.7环境。
5. 检查用户环境变量优先级
Windows的环境变量分为用户变量和系统变量,确保用户变量的PATH也将Python3.7路径放在最顶部——有时系统变量的优先级会覆盖用户变量,两者都要检查调整。
内容的提问来源于stack exchange,提问作者pg daszzz

