Windows10下多版本Python共存时venv模块调用报错如何解决
Windows多版本Python共存正确配置方案
报错原因
你遇到的报错确实是手动复制重命名python.exe的操作导致的:venv等内置/第三方模块调用解释器时,默认会从当前运行的解释器所在目录查找原生的python.exe文件,你复制生成的python3x.exe运行时会触发路径匹配异常,找不到对应的目标文件。
推荐配置方案(优先选择)
使用Windows系统Python官方自带的py.exe启动器,无需手动修改可执行文件、无需手动调整Path顺序,即可实现多版本共存调用:
- 所有Python版本安装时默认会自动安装
py.exe启动器,如果你之前安装时取消了相关选项,重新运行对应版本安装包,选择「Modify」-勾选「Py launcher」安装即可 - 调用指定版本Python直接使用如下格式即可:
# 调用Python3.7 py -3.7 # 用Python3.9创建虚拟环境 py -3.9 -m venv .venv # 查看当前所有已识别的Python版本 py -0 - 该方案完全兼容所有模块的解释器调用逻辑,不会出现你遇到的路径报错问题。
替代方案(如果你习惯python3x的调用方式)
不要直接复制可执行文件重命名,改为给原生python.exe创建软链接:
- 先删除你之前复制生成的所有
python3x.exe文件 - 打开管理员权限的命令提示符,进入对应Python版本的安装目录,执行软链接创建命令,以Python3.9为例:
mklink python39.exe python.exe - 所有版本都按上述规则创建软链接后,即可正常通过
python39 -m venv .venv这类命令执行操作,模块调用时也能正常找到原生python.exe文件。
内容的提问来源于stack exchange,提问作者Andrex
相关产品推荐
相关产品推荐

