Python 3.7.7 嵌入 - 致命 Python 错误:initfsencoding:无法加载文件系统编解码器

问题描述 投票:0回答:1

我正在开发一个项目,我需要安装python-3.7.7-embed-amd64。我从这里得到它:https://www.python.org/downloads/release/python-377/

当我尝试运行此命令时,我收到以下输出:

> python --version
  Python 3.7.7

> python
  Fatal Python error: initfsencoding: unable to load the file system codec
  ModuleNotFoundError: No module named 'encodings'

我发现一些解决方案假设环境变量可能未正确设置。 但我认为我的设置正确。

> echo %PATH%
C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Program Files\nodejs\;C:\ProgramData\chocolatey\bin;C:\Program Files (x86)\MySQL\MySQL Utilities 1.6\;C:\Program Files\Docker\Docker\resources\bin;C:\ProgramData\DockerDesktop\version-bin;C:\Users\ela\python-3.7.7-embed-amd64;C:\Program Files\Java\jdk1.8.0_231\bin;C:\Users\ela\apache-maven-3.6.3\bin;C:\Users\ela\AppData\Local\Programs\Git\cmd;C:\Program Files\PostgreSQL\9.5\bin;C:\ProgramData\chocolatey\lib\payara\tools\payara41\bin;C:\Users\ela\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\ela\WildFly\wildfly-10.1.0.Final\bin;C:\Users\ela\npm-global\node_modules\@angular\cli\bin;C:\Users\ela\AppData\Local\atom\bin;

因此,在路径中我有正确的Python路径:C:\Users la\python-3.7.7-embed-amd64;

您认为我应该怎样努力消除这个错误?

Fatal Python error: initfsencoding: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
python environment-variables python-3.7 python-embedding
1个回答
0
投票

此错误很可能是由于在没有进行所需修改的情况下运行 Windows

embed.zip
造成的。

Windows Python

embed.zip
发行版需要进行一些修改;它无法“开箱即用”正确运行。

我创建了一个 PowerShell 脚本

PythonEmbed4Win.ps1
,用于安装从 Internet 下载的
embed.zip
Python 发行版,然后修改安装,使其运行时不会出现错误。

Invoke-WebRequest -Uri "https://raw.githubusercontent.com/jtmoon79/PythonEmbed4Win/main/PythonEmbed4Win.ps1" -OutFile "PythonEmbed4Win.ps1"

.\PythonEmbed4Win.ps1 -Version 3.7

因此,在路径中我有正确的Python路径:C:\Users la\python-3.7.7-embed-amd64;

仅当您只想从命令 shell 中键入“

PATH
”时,才需要修改
python
。否则,通过完整路径调用
python
(
python.exe
),例如
C:\Users\ela\python-3.7.7-embed-amd64\python.exe
.

© www.soinside.com 2019 - 2024. All rights reserved.