Fatal Python error on Windows 10 ModuleNotFoundError: No module named 'encodings'

Fatal Python error on Windows 10 ModuleNotFoundError: No module named 'encodings'

我正在 Windows 10 笔记本电脑上安装 Python,当我尝试 运行 时,我得到了这个:

Fatal Python error: Py_Initialize: unable to load the file system codec ModuleNotFoundError: No module named 'encodings' Current thread 0x0000037c (most recent call first):

此问题已在本线程中解决 here。显然,运行 Python 设置为管理员 and/or 正确设置环境变量解决了这个问题。

首先,不要忘记 select“将 Python 3.x 添加到 PATH” 你点击 立即安装并在安装后重新启动,以便Windows考虑新路径。

其次,我在 Windows 7 和 64 位上遇到了与 Python 3 相同的问题,我通过从 Windows 7 系统中删除 PYTHONPATH 和 PYTHONHOME 来摆脱它环境变量,因为我之前安装了 Python 2,这些路径指向我的 Python 2 目录。我不得不简单地删除 PYTHONPATH 和 PYTHONHOME 变量。

甚至我在安装 Python 3.7 测试版时也遇到了同样的问题,我按照以下步骤解决了这个问题:

  1. 如果您没有安装以前版本的Python并且已经为该版本设置了环境变量和路径,只需删除路径和环境变量

  2. 运行 下载的Python 3.7 EXE 文件作为管理员

  3. 在安装结束时,如果它询问路径长度的许可,只需单击它。现在在命令行输入“python”看看。它应该有效。

我不确定为什么这个问题仍然在这里没有解决方案。我刚遇到这个并通过这个解决了:

  1. 关闭所有 CMD 或控制台模拟器。

  2. 进入系统环境设置并清除所有旧的Python路径或环境设置。确保同时检查 UserSystem 设置中的 PATH。

  3. 再试一次python -V看看你能不能运行。

  • 如果您删除了所有 Python 环境设置,我建议您重新安装 Python 并在安装过程中打开 Add Python to PATH 设置。

我 运行 在 Windows 10 遇到了同样的问题。以下是我修复它的方法:

  1. 打开“环境变量”(在“系统属性”下)。
  2. 在打开的 window 中,select 'Path' 行,然后单击 'Edit...' 按钮。
  3. 应该有两个环境变量C:\Python37-32\Scripts\C:\Python37-32\然后点击'确定'(一定要检查这些路径值是否对应位置和你的 Python 安装版本。)
  4. 接下来,在“Environment Variables”window 的顶部,查找 PYTHONHOME 变量并确保它也已设置至 C:\Python37-32

我遇到了同样的问题(我使用 Mac,但我认为这对这个问题没有任何影响)并且它来自所选 Python 解释器之间的差异路径和 spyder 中的当前工作目录。

我在Python中使用虚拟环境来避免不同项目之间安装模块的版本冲突(我相信这是一个很好的做法)。这导致我通过访问在 spyder 中配置解释器路径:

preferences > python interpreter > use the following interpreter

当我从不同的路径启动 spyder 时出现问题。我得到与 Milo 完全相同的错误。为了解决这个问题,我看到了两个选择:

  1. 更改解释器路径以匹配 spyder 工作目录
  2. 更改 spyder 工作目录以匹配 Python 解释器路径

在安装Python解释器之前,检查环境并删除环境“PATH”下现有的PYTHONHOMEpython path。或者改成要安装的新路径。

我通过删除我的虚拟环境并创建一个新环境解决了这个问题。我相信在我的情况下出现错误是因为旧的虚拟环境是 Python 3.6 上的 运行,我最近卸载并替换为 Python 3.8。

这通常可能是一种不好的做法,但我没有任何版本很重要的实际项目。

如果您在虚拟环境中遇到此问题,只需删除它并创建另一个。它对我有用。