每个与Python相关的可执行文件都损坏:“致命Python错误:init_import_size:无法导入站点模块”

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

我对 python,尤其是它的生态系统非常陌生。今天,我试图从我的命令行调用一个昨天运行良好的 python 命令,但今天我收到以下致命错误:

Fatal Python error: init_import_size: Failed to import the site module
Python runtime state: initialized
ModuleNotFoundError: No module named 'site'

Current thread 0x00000cac (most recent call first):
<no Python frame>

在尝试查找问题时,我很快意识到这对我的命令来说并不特殊。事实上,从任何命令提示符调用时,所有与 python 相关的可执行文件都会产生相同的错误,无论我位于文件系统中的哪个位置。

python
python3
anaconda
(及其提示),
conda
pip
pip3
,......所有这些突然不再起作用了。它们都失败并显示相同的错误消息,只有线程正在改变。

在我的研究中,我经常发现一个非常相似的错误,但它与

encodings
模块有关。另外,我还没有读到有关整个 Python 生态系统刚刚崩溃的问题。

上述类似错误的解决方案似乎包括对

PYTHONPATH
PYTHONHOME
envs (如果存在)做一些事情。但我没有它们,既没有作为用户变量,也没有作为系统变量。

我通过 scoop 安装 anaconda3 来安装 python。应该是最新版本(2020.11)。我一直在使用

PyCharm

 内部以及通过命令行的安装。

有谁知道这里的问题是什么?我有点被困在这里,因为我什至无法使用 conda 或 pip 进行诊断,例如调用

conda list

 来了解有关 
site
 包状态的更多信息。所以,如果有人能帮助我,我将非常感激!

python pip conda
6个回答
3
投票
当我的工作目录中有一个名为 stat.py 的 python 文件时,我遇到了同样的错误。 删除后一切恢复正常。


2
投票
我遇到了这个错误。

对我来说,我有一些项目树(虚构):

doc/ ├── project/ │ ├── embedded/ | | ├── __init__.py │ │ ├── deep_file │ │ └── utils/ │ │ └── os.py # < This one! Look here!! │ │ └── deep/ │ │ └── folder/ │ │ └── very_deep_file │ └── less_deep_file |...
在这棵树中,我有一个名为 

.../utils/os.py

 的文件。

Pycharm 调试模式会找到此

os.py

 并使用它代替 
默认的 os.py
。为了解决这个问题,我将 
os.py
 重命名为其他名称。

我真是个傻瓜!希望这可以节省其他人的时间和头痛!!


0
投票
我有一个类似的问题,我无法使用 anaconda Scripts 文件夹中的任何命令。 anaconda 新安装使用的是 Python 3.8,而我为 Python 3.9 的路径设置了系统变量 PYTHONPATH。 我的解决方案是删除 PYTHONPATH 系统变量,然后 anaconda 导航器再次工作。


0
投票
当 Python 尝试导入模块但遇到与项目中的文件命名冲突时,通常会出现此错误。就您而言,问题似乎在于您的项目目录 (

operator.py

) 中有一个名为 
C:\Users\micha\PycharmProjects\pythonProject\
 的文件。此文件名与 Python 的内置 
operator
 模块冲突。

要解决此问题:

  1. 重命名冲突文件:将项目目录中的 operator.py

     重命名为唯一的名称,例如 
    my_operator.py

  2. ** 删除 .pyc 文件 **:有时,重命名后编译的文件仍然存在。导航到项目内的

    __pycache__

     文件夹,然后删除与 
    .pyc
     相关的所有 
    operator
     文件。

  3. 重新启动您的IDE:关闭并重新打开PyCharm以确保它不会缓存旧文件路径。

完成这些更改后,重新运行您的项目。这应该会消除导入冲突并允许您的虚拟环境正确初始化。让我知道这是否适合您!


-1
投票
我也遇到过这样的事。当我第一次运行它而不导入模块然后添加模块并再次运行时它会自动修复。对我来说是时间模块


-1
投票
executing python from command prompt failed with very same error (which was working fine earlier). Fatal Python error: init_import_site: Failed to import the site module Python runtime state: initialized Traceback (most recent call last): File "C:\.......\Python\Python310\lib\site.py", line 73, in <module> import os File "<frozen importlib._bootstrap>", line 1027, in _find_and_load File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 688, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 879, in exec_module File "<frozen importlib._bootstrap_external>", line 1012, in get_code File "<frozen importlib._bootstrap_external>", line 672, in _compile_bytecode ValueError: bad marshal data (unknown type code) However after restarting my windows machine, i didn't get this error.
    
© www.soinside.com 2019 - 2024. All rights reserved.