为什么在Python3中输入命令却显示C:\python32\lib...的错误路径?

在命令行里面输入,python3,结果显示:

Fatal Python error: Py_Initialize: unable to load the file system codec
  File "C:\Python27\lib\encodings\__init__.py", line 123
    raise CodecRegistryError,\
                            ^
SyntaxError: invalid syntax

Current thread 0x000018e4 (most recent call first):

然后再输入 where python3,显示:

C:\Python36\python3.exe

注:都已经添加到 Path 里面去了,系统是 win10

C:\python27
C:\python27\scripts
C:\python36
C:\python36\scripts

为什么在Python3中输入命令却显示C:\python32\lib...的错误路径?

12 回复

这个问题通常是因为系统环境变量中残留了旧版本Python的路径配置。

首先检查你的Python安装路径是否正确:

import sys
print(sys.executable)

如果显示的是C:\python32\这样的旧路径,说明环境变量配置有问题。按以下步骤修复:

  1. 检查环境变量

    • 右键“此电脑” → 属性 → 高级系统设置 → 环境变量
    • 在“系统变量”中找到Path,确保里面指向的是你实际安装的Python路径(比如C:\Python39\C:\Users\你的用户名\AppData\Local\Programs\Python\Python39\
  2. 重新安装Python(如果环境变量混乱):

    • 卸载所有Python版本
    • 去python.org下载最新版
    • 安装时务必勾选“Add Python to PATH”
  3. 使用虚拟环境避免路径冲突:

python -m venv myenv
myenv\Scripts\activate

总结:清理旧环境变量,确保PATH指向正确的Python安装目录。

命令行执行 set 看看?

把你加的环境变量都删掉。。。

python3 你添加 python2 的东西, emmm…

我想了半天为什么是 32,大概是 3 和 2 的杂糅吧。

你可以把 Python 3.6 在 PATH 里面放在更前面,这样 Python 3.6 就可以用了,理论上。

标题写 C:\python32
内容写 C:\Python27
我已经看懵了。

为啥要删除环境变量啊?

不好意思,标题写错了。
我在附言里更新了

装过 python3 后基本用 py -2 py -3 进行切换了

兄弟,怎么同时并存 2 和 3 啊
我就是看百度来的方法设置的,分别放在 C 盘下的两个目录中间,然后添加到 path,怎么不行呢?

#10 正常安装 python2.7 python3.6 后可以在 cmd 中直接使用 py 命令进行调用
py -2 调用 python2.7
py -3 调用 python3.6
py 这个应该是包含在 3.6 中的.

回到顶部