获取IdleX attribute

2024-04-25 13:51:07 发布

您现在位置:Python中文网/ 问答频道 /正文

在Ubuntu12.04上运行python2.7.3,并安装了最新版本的IPython。我安装了IdleX,但一运行它,我就得到了错误:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/idlexlib/extensionManager.py", line 131, in load_extension
    mod = importlib.import_module('.' + fullname, package=__package__)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/usr/local/lib/python2.7/dist-packages/idlexlib/extensions/IPyIDLE.py", line 253, in <module>
    class IdleXSubSocketChannel(SimpleChannel, channels.IOPubChannel):
AttributeError: 'module' object has no attribute 'IOPubChannel'
could not load IPyIDLE

一开始我以为我可以忽略它,因为不管怎么说,一切似乎都很正常,但是后来我尝试了一些在IdleX中导致错误的脚本,但在常规的idle中却没有。具体地说,from selenium import webdriver在常规idle中工作得很好,但在IdleX中却不行。不知道我做错了什么,该怎么办。。。在


Tags: inpyimportlibpackagesusrlocaldist
2条回答

经过温和的搜索,我发现问题是由IPython的最新版本引起的,它删除了所需的“channels”包。在

您需要首先卸载IPython版本。这很容易通过发出命令来完成:

$ pip uninstall ipython

接受并卸载后,您将需要安装IPython的较旧的特定版本。我用的是2.4,而且效果很好。在

^{pr2}$

也许有一些方法可以绕过卸载和重新安装,但这对我来说已经足够了。IdleX没有问题了。在

我在macosx和10.10.5上使用python3.4.3也遇到了同样的问题。 我也尝试过iPython3.0和iPython3.1,但只有在2.4中才一切正常。 一个小小的修正: 您需要键入(2x==) $ pip install -Iv ipython==2.4.0

谢谢你的解决方案。在

相关问题 更多 >