启动 IPython Notebook (Anaconda 3) 时出现错误“%1 不是有效的 Win32 应用程序”

Error "%1 is not a valid Win32 application" when starting IPython Notebook (Anaconda 3)

这一切是如何开始的...

我先安装了 Python 3(在 Windows 8.1 上)以学习 Python。后来,我参加了一个 Python 训练营,他们告诉我安装 Anaconda,我照做了。后来我知道这是Python 2,所以我下载并安装了Anaconda 3,其中有Python 3.

到目前为止,了解已安装的软件包是多余的和令人困惑的。所以我今天决定卸载所有 Python(即独立的 Python 3、Anaconda 和 Anaconda 3)。我在谷歌上搜索了说明,似乎我需要做的就是通过控制面板中的 'Programs and Features' 卸载。 现在,我重新安装了 Anaconda 3,我能够从 cmd 和 PyCharm.

中 运行 一个 .py 文件

问题:

当我尝试启动 IPython Notebook 时(我知道这是 Anaconda 发行版的一部分),它给我以下错误消息,

PS C:\Users\myPC> ipython notebook
Traceback (most recent call last):
  File "C:\Users\myPC\Anaconda3\Scripts\ipython-script.py", line 5, in <module>
    sys.exit(start_ipython())
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\__init__.py", line 120, in start_ipython
    return launch_new_instance(argv=argv, **kwargs)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 573, in launch_instance
    app.initialize(argv)
  File "<string>", line 2, in initialize
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\terminal\ipapp.py", line 321, in initialize
    super(TerminalIPythonApp, self).initialize(argv)
  File "<string>", line 2, in initialize
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\core\application.py", line 369, in initialize
    self.parse_command_line(argv)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\terminal\ipapp.py", line 316, in parse_command_line
    return super(TerminalIPythonApp, self).parse_command_line(argv)
  File "<string>", line 2, in parse_command_line
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 471, in parse_command_line
    return self.initialize_subcommand(subc, subargv)
  File "<string>", line 2, in initialize_subcommand
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\config\application.py", line 402, in initialize_subcommand
    subapp = import_item(subapp)
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\utils\importstring.py", line 42, in import_item
    module = __import__(package, fromlist=[obj])
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\html\notebookapp.py", line 30, in <module>
    check_for_zmq('13', 'IPython.html')
  File "C:\Users\myPC\Anaconda3\lib\site-packages\IPython\utils\zmqrelated.py", line 10, in check_for_zmq
    import zmq
  File "C:\Users\myPC\AppData\Roaming\Python\Python34\site-packages\zmq\__init__.py", line 42, in <module>
    _libsodium = ctypes.cdll.LoadLibrary(bundled_sodium[0])
  File "C:\Users\myPC\Anaconda3\lib\ctypes\__init__.py", line 429, in LoadLibrary
    return self._dlltype(name)
  File "C:\Users\myPC\Anaconda3\lib\ctypes\__init__.py", line 351, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 193] %1 is not a valid Win32 application

我搜索了此错误消息并找到了其他人发布的一些出现类似错误的帖子,但针对与启动 IPython Notebook 无关的不同情况。我尝试了其中一些建议的解决方案,但 none 似乎可以帮助我启动 IPython Notebook。

在这一点上,我担心我可能会把事情搞得更糟...

我该如何解决这个问题?

我 IPython 笔记本回来了。我不太确定幕后发生了什么,但这就是我所做的。

  1. 已卸载 Anaconda 3
  2. 重新安装了 Anaconda 3(只是为了看看是否 之前的重新安装出现了问题。 不用说,我还是无法启动 IPython Notebook)
  3. 安装了 Anaconda 3(这次是 32 位;之前我一直 处理 64 位 Anaconda 3)
  4. 我能够从 cmd
  5. 启动 IPython Notebook

出于某种原因,我有一种不好的预感,我可能还没有解决这个问题;将来可能会回来咬人。如果有人对要研究的内容有任何建议(例如清理),我将不胜感激!