在使用 Anaconda Navigator 更新了一些包(numpy、matplotlib、...)和 Spyder 之后;我使用这些包的代码不再有效,并且在导入时出错。
我试图反向更新到以前的版本安装, 没有成功。
我检查了 Python produces: OSError: [WinError 193] %1 is not a valid Win32 application ; 但没有解决方案。
我检查了 https://github.com/pytorch/pytorch/issues/27693看着 在 Windows 的 PATH 中使用用户的环境变量和 系统;但我不知道要寻找什么。 oggyoggy448 建议 删除并重新安装 numpy;尝试了几次并重新启动了我的电脑 但没有成功。
https://python-forum.io/Thread-WinError-193-1-is-not-a-valid-Win32-application 建议从命令行运行;您可以在下面找到。
我尝试完全卸载 Anaconda 和所有 python 版本 我的电脑;重新安装 Anaconda 和 Spyder 后;同样的问题 仍然存在。
期待更好的理解和解决建议...
在使用 IPython 控制台时,只需在下面输入:
In [1]: import numpy
这给出了以下输出:
---------------------------------------------------------------------------
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 错误 : OSError: [WinError 193] %1 is not a valid Win32 application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58512907/