簡體   English   中英

Python 錯誤:OSError: [WinError 193] %1 不是有效的 Win32 應用程序

[英]Python error: OSError: [WinError 193] %1 is not a valid Win32 application

使用 Anaconda Navigator 更新一些包(numpy,matplotlib,...)和 Spyder 之后; 我使用這些包的代碼不再有效,並且在導入時出錯。

期待更好的理解和解決建議...

在使用 IPython 控制台並在下面輸入時:

In [1]: import numpy

這給出了以下 output:

---------------------------------------------------------------------------
OSError                                   Traceback (most recent call last)
<ipython-input-5-d4cdadb62aa7> in <module>
----> 1 import numpy

~\AppData\Roaming\Python\Python37\site-packages\numpy\__init__.py in <module>
    138
    139     # Allow distributors to run custom init code
--> 140     from . import _distributor_init
    141
    142     from . import core

~\AppData\Roaming\Python\Python37\site-packages\numpy\_distributor_init.py in <module>
     24                 # NOTE: would it change behavior to load ALL
     25                 # DLLs at this path vs. the name restriction?
---> 26                 WinDLL(os.path.abspath(filename))
     27                 DLL_filenames.append(filename)
     28     if len(DLL_filenames) > 1:

E:\Programs\Anaconda\lib\ctypes\__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error)
    362
    363         if handle is None:
--> 364             self._handle = _dlopen(self._name, mode)
    365         else:
    366             self._handle = handle

OSError: [WinError 193] %1 is not a valid Win32 application

幾個晚上后,以下對我有用(希望它可能對其他有同樣問題的人有用):

在 Ipython 環境中,鍵入:

In [1]: import numpy

給出了如上所示的錯誤。 所以我做了以下事情:

In [2]: pip uninstall numpy

獲取一些代碼行並確認 numpy 正在被刪除。 之后我嘗試了:

In [3]: import numpy

沒有錯誤,一切似乎都正常,(中間沒有進行任何安裝。)好像在之前升級某些軟件包期間,正在安裝 numpy 的雙版本並導致錯誤日志如上所示。

完全相同的程序也適用於 Matplotlib(卸載而不是重新安裝)使其工作。 希望這會有所幫助。

它發生在我身上,但不幸的是,現有的所有解決方案都沒有太大幫助。 此問題的可能結果是您的 python 環境超級混亂。 盡管我無法解決此錯誤,因為可能我必須從系統中卸載 python,清除緩存等,但是為了快速完成手頭的任務,我能夠找到解決方法

解決方法是:

pip install conda

使用所需的 python 版本創建 conda 環境。 例如:

$ conda create --name conda_virtualenv python=3.6

如果您正在使用 Pycharm 或 VScode,然后手動 select 這個新的 python 解釋器並開始工作(現在您將能夠安裝所需的庫)

如果您在終端中工作,請激活此環境$ conda activate conda_virtualenv並做任何您想做的事情。 如果有人有更好的解決方法,請在這里提出建議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM