在Ubuntu 12.04上运行Python 2.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中导致错误的脚本,但不是在常规空闲中。具体来说,from selenium import webdriver
在常规空闲时运行良好,但在IdleX中运行不正常。无法弄清楚我做错了什么以及该做些什么......
答案 0 :(得分:1)
经过温和的搜索后,我发现问题是由最新版本的IPython引起的,该版本删除了所需的“频道”包。
您需要先卸载您的IPython版本。这可以通过发出命令轻松完成:
$ pip uninstall ipython
接受并卸载后,您需要安装较旧的特定版本的IPython。我使用2.4,它就像一个魅力。
$ pip install -Iv ipython==2.4.0
可能有办法绕过卸载和重新安装,但这样做对我来说。没有IdleX的问题。
答案 1 :(得分:0)
我在Mac OS X和10.10.5上遇到了与Python 3.4.3相同的问题。
我也尝试过iPython3.0和iPython3.1,但只有2.4一切正常。
一个小小的修正:
你需要输入(2x ==)
$ pip install -Iv ipython==2.4.0
感谢您提供此解决方案。