解决 Anaconda/iPython Notebooks/Spyder IDE 在 zmq lib import 上的



这是Windows 7 - 64,python 2.7.8上的全新Anaconda 2.1安装。Spyder IDE无法启动,并在从cli运行时抛出相同的错误/写入相同的回溯python spyder --reset。查看回溯,加载模块似乎zmq问题。该模块的__init__.py查找任何具有以下扩展之一的预编译libzmq文件:pydsodlldylib,并将它们添加到列表bundled,然后尝试加载bundled[0]

bundled = []
bundled_sodium = []
for ext in ('pyd', 'so', 'dll', 'dylib'):
    bundled_sodium.extend(glob.glob(os.path.join(here, 'libsodium*.%s*' % ext)))
    bundled.extend(glob.glob(os.path.join(here, 'libzmq*.%s*' % ext)))

令人困惑的是,libzmq.pyd位于Anaconda2.1Libsite-packageszmq目录中!在查看了代码和SO上的其他问题后,我感到困惑。请帮忙。

追踪:

C:UserssomeUser>cmd /K spyder
    Traceback (most recent call last):
      File "C:UserssomeUserAnaconda2.1Scriptsspyder-script.py", line 2, in <m
    odule>
        start_app.main()
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibstart_app.py
    ", line 85, in main
        from spyderlib import spyder
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibspyder.py",
    line 45, in <module>
        from spyderlib.ipythonconfig import IPYTHON_QT_INSTALLED, SUPPORTED_IPYTHON
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibipythonconfi
    g.py", line 22, in <module>
        IPYTHON_QT_INSTALLED = is_qtconsole_installed()
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibipythonconfi
    g.py", line 15, in is_qtconsole_installed
        pyzmq_installed = programs.is_module_installed('zmq')
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibutilsprogra
    ms.py", line 272, in is_module_installed
        actver = get_module_version(module_name)
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibutilsprogra
    ms.py", line 218, in get_module_version
        mod = __import__(module_name)
      File "C:Python27Libsite-packageszmq__init__.py", line 41, in <module>
        _libzmq = ctypes.cdll.LoadLibrary(bundled[0])
      File "C:UserssomeUserAnaconda2.1libctypes__init__.py", line 443, in Lo
    adLibrary
        return self._dlltype(name)
      File "C:UserssomeUserAnaconda2.1libctypes__init__.py", line 365, in __
    init__
        self._handle = _dlopen(self._name, mode)
    WindowsError: [Error 193] %1 is not a valid Win32 application
    C:UserssomeUser>spyder --reset
    Traceback (most recent call last):
      File "C:UserssomeUserAnaconda2.1Scriptsspyder-script.py", line 2, in <m
    odule>
        start_app.main()
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibstart_app.py
    ", line 85, in main
        from spyderlib import spyder
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibspyder.py",
    line 45, in <module>
        from spyderlib.ipythonconfig import IPYTHON_QT_INSTALLED, SUPPORTED_IPYTHON
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibipythonconfi
    g.py", line 22, in <module>
        IPYTHON_QT_INSTALLED = is_qtconsole_installed()
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibipythonconfi
    g.py", line 15, in is_qtconsole_installed
        pyzmq_installed = programs.is_module_installed('zmq')
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibutilsprogra
    ms.py", line 272, in is_module_installed
        actver = get_module_version(module_name)
      File "C:UserssomeUserAnaconda2.1libsite-packagesspyderlibutilsprogra
    ms.py", line 218, in get_module_version
        mod = __import__(module_name)
      File "C:Python27Libsite-packageszmq__init__.py", line 41, in <module>
        _libzmq = ctypes.cdll.LoadLibrary(bundled[0])
      File "C:UserssomeUserAnaconda2.1libctypes__init__.py", line 443, in Lo
    adLibrary
        return self._dlltype(name)
      File "C:UserssomeUserAnaconda2.1libctypes__init__.py", line 365, in __
    init__
        self._handle = _dlopen(self._name, mode)
    WindowsError: [Error 193] %1 is not a valid Win32 application

编辑:此问题也阻止iPython笔记本打开。回溯中的相同错误:

Traceback (most recent call last):
  File "C:Userseric.adamsAnaconda2.1Scripts/ipython-script.py", line 5, in <
module>
    sys.exit(start_ipython())
  File "C:Python27Libsite-packagesIPython__init__.py", line 120, in start_i
python
    return launch_new_instance(argv=argv, **kwargs)
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 563,
in launch_instance
    app.initialize(argv)
  File "<string>", line 2, in initialize
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 92, i
n catch_config_error
    return method(app, *args, **kwargs)
  File "C:Python27Libsite-packagesIPythonterminalipapp.py", line 321, in i
nitialize
    super(TerminalIPythonApp, self).initialize(argv)
  File "<string>", line 2, in initialize
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 92, i
n catch_config_error
    return method(app, *args, **kwargs)
  File "C:Python27Libsite-packagesIPythoncoreapplication.py", line 381, in
 initialize
    self.parse_command_line(argv)
  File "C:Python27Libsite-packagesIPythonterminalipapp.py", line 316, in p
arse_command_line
    return super(TerminalIPythonApp, self).parse_command_line(argv)
  File "<string>", line 2, in parse_command_line
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 92, i
n catch_config_error
    return method(app, *args, **kwargs)
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 475,
in parse_command_line
    return self.initialize_subcommand(subc, subargv)
  File "<string>", line 2, in initialize_subcommand
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 92, i
n catch_config_error
    return method(app, *args, **kwargs)
  File "C:Python27Libsite-packagesIPythonconfigapplication.py", line 406,
in initialize_subcommand
    subapp = import_item(subapp)
  File "C:Python27Libsite-packagesIPythonutilsimportstring.py", line 42, i
n import_item
    module = __import__(package, fromlist=[obj])
  File "C:Python27Libsite-packagesIPythonhtmlnotebookapp.py", line 39, in
<module>
    check_for_zmq('2.1.11', 'IPython.html')
  File "C:Python27Libsite-packagesIPythonutilszmqrelated.py", line 35, in
check_for_zmq
    import zmq
  File "C:Python27Libsite-packageszmq__init__.py", line 41, in <module>
    _libzmq = ctypes.cdll.LoadLibrary(bundled[0])
  File "C:Userseric.adamsAnaconda2.1libctypes__init__.py", line 443, in Lo
adLibrary
    return self._dlltype(name)
  File "C:Userseric.adamsAnaconda2.1libctypes__init__.py", line 365, in __
init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 193] %1 is not a valid Win32 application

你正在以某种方式在C:Python27中安装Python。您是否设置了PYTHONPATH环境变量? 如果是这样,请取消设置。

最简单的解决方案是 删除或搁置C:Python27 .

相关内容

最新更新