在IPython notebook或qtconsole中导入Traits

时间:2012-03-26 18:31:20

标签: ipython traits enthought

导入导入此模块的Python模块时遇到麻烦:

from traits.api import HasTraits, Float, CFloat, Range, Property
from traitsui.api import View, Item, UItem, Tabbed, HGroup, VGroup, Group
from chaco.api import ArrayPlotData, Plot
from enable.component_editor import ComponentEditor
from numpy import deg2rad, pi, cos, sqrt

# physical constants
from scipy.constants import h,c

在我的Lion Macbook Pro上。蟒蛇火箭出现在码头上,但不会停止上下跳跃。在具有激活的pylab模式的iPython笔记本和qtconsole中都会发生这种情况。在使用ipython --pylab的终端中,它工作正常。 它可能与后端有关吗?我认为我的默认值是wx。

1 个答案:

答案 0 :(得分:3)

是的,当您使用GUI事件循环(wx / qt / gtk / etc。)时,需要通知IPython,因此它可以将与终端通信所需的输入挂钩集成到该eventloop中。 ETS / chaco确实使用了这样的后端,因此要在IPython中以交互方式使用这些后端,必须启用eventloop集成。 ipython --pylab意味着与与默认matplotlib后端关联的事件循环以及各种命名空间初始化的这种集成。但是你可以通过--gui wx(假设wx,使用qt,tk等)来集成IPython和eventloop。您甚至可以通过使用%gui wx激活后端来启动IPython后执行此操作。