我在亚马逊EWS EC2上免费安装了epd 7.3.2,并将ipython笔记本硬件配置为公共笔记本电脑服务器。
我以这种方式运行服务器:
nohup ipython notebook --profile=nbserver %
一切正常,我可以通过https和代码登录密码。
现在我想用pdb / ipdb来调试笔记本中的python函数,但是在互联网上我找不到如何设置调试器的过程。
有人可以帮助我吗?
此致
的Massimo
这些是已安装的软件包:
root@domU-xx-xx-xx-xx-xx-xx:/opt/epdFree7.3.2/bin# ./pip freeze
EPD==7.3
Examples==7.3
Jinja2==2.6
MKL==10.3
PIL==1.1.7
Pygments==1.4
PythonDoc==2.7.3
appinst==2.1.2
apptools==4.1.0
casuarius==1.0
chaco==4.2.0
cloud==2.4.6
configobj==4.7.2
distribute==0.6.26
enable==4.2.0
enaml==0.2.0
enstaller==4.5.6
etsproxy==0.1.1
freetype==2.4.4
idle==2.7.3
ipdb==0.7
ipython==0.13.1
kernmagic==0.1.0
matplotlib==1.1.0
nose==1.1.2
numpy==1.6.1
ply==3.4
pyaudio==0.2.4
pyface==4.2.0
pyglet==1.1.4
python-dateutil==1.5
pytz==2011n
pyzmq==2.1.11
scipy==0.10.1
tornado==2.2
traits==4.2.0
traitsui==4.2.0
wsgiref==0.1.2
wxPython==2.8.10.1
root@domU-xx-xx-xx-xx-xx-xx:/opt/epdFree7.3.2/bin# ./enpkg -l
prefix: /opt/epdFree7.3.2
Name Version Store
============================================================
appinst 2.1.2-1 -
apptools 4.1.0-1 -
casuarius 1.0-1 -
chaco 4.2.0-1 -
cloud 2.4.6-1 -
configobj 4.7.2-2 -
distribute 0.6.26-1 -
enable 4.2.0-1 -
enaml 0.2.0-1 -
enstaller 4.5.6-1 api rh5-64
EPD 7.3-0 -
etsproxy 0.1.1-1 -
Examples 7.3-0 -
freetype 2.4.4-1 -
idle 2.7.3-1 -
ipython 0.13.1-2 api rh5-64
Jinja2 2.6-2 -
kernmagic 0.1.0-1 -
matplotlib 1.1.0-1 -
MKL 10.3-1 api rh5-64
nose 1.1.2-1 -
numpy 1.6.1-3 api rh5-64
PIL 1.1.7-3 -
ply 3.4-1 -
pyaudio 0.2.4-1 -
pyface 4.2.0-1 -
pyglet 1.1.4-2 -
Pygments 1.4-1 -
python_dateutil 1.5-2 -
PythonDoc 2.7.3-1 -
pytz 2011n-1 -
pyzmq 2.1.11-1 -
scipy 0.10.1-0 -
tornado 2.2-1 -
traits 4.2.0-1 -
traitsui 4.2.0-1 -
答案 0 :(得分:26)
只是扩大@Ken Arnold的观点,这样人们就不必阅读所有答案来解决这个问题。 从版本1.0开始,在ipython笔记本中调试 DOES WORK 。
只需使用%debug
启动单元格,然后您就可以使用ipdb的典型控件((n)ext
,step
等)。
答案 1 :(得分:8)
不幸的是,调试器尚未集成到笔记本中,但您可以使用另一个前端连接到内核并在那里运行调试器。如果您设置了X转发,最简单的方法是运行%qtconsole
(请参阅http://ipython.org/ipython-doc/dev/interactive/htmlnotebook.html#workflow-and-limitations)。您还可以运行%connect_info
,然后使用它为您提供的信息来运行连接到同一内核的ipython console
(即普通的终端模式)。
答案 2 :(得分:5)
这不可能!
我发现了这个:
“非常重要的是,这意味着%debug magic在笔记本中不起作用!我们打算纠正这个限制,但与此同时,有一种方法可以调试笔记本中的问题:你可以附加一个Qt控制台到你现有的笔记本内核,并从Qt控制台运行%debug。“
on Ipython Doc
现在重点是:
远程EWS EC2上的JSON连接文件是:
{
"stdin_port": 55986,
"ip": "127.0.0.1",
"hb_port": 55385,
"key": "984e86e7-4d88-4d74-8912-cbe46bc316c0",
"shell_port": 49024,
"iopub_port": 33440
}