问题标签 [ipdb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 跨 ipdb 会话的历史记录
以前有人问过这个问题,但我找不到一个好的答案。所以,我想再问一次。
我希望我的 ipdb 能够记住跨会话的命令。现在,它可以提取在 Ipython 会话中执行的命令,但不能从旧的 ipdb 会话中提取。如果我能拥有这个功能,那将是一个巨大的节省时间。
有没有人可以解决这个问题?
python - 显示由 ipdb 中手动调用的函数引发的异常的回溯
我想显示完整的回溯(很漂亮 - 带有堆栈帧、本地变量等),而不仅仅是“*** IndexError:列表索引超出范围”。我怎么做?
ipython - ipython 样式选项卡包含用于导入模块的 ipdb
我正在尝试通过使用 ipdb 来获得带有 pdb 的 ipython 样式表。
在干净的 ubuntu 14.04 安装(新的 aws 实例)上我运行。
然后启动 ipython,然后尝试。
boto.[tab] 就坐在那里。如果我正确阅读文档,这应该可以,但也许我错过了一些东西。
如果我定义一个简单的脚本test.py
然后调用:
我得到了我想要的行为。
有谁知道如何使选项卡的完整功能适用于 set_trace() 工作案例?
-谢谢
python - 使用 Macports 安装 ipdb 时出错
我想在运行 Yosemite 的 Mac 上安装 ipdb。当我输入这个:
它给了我这个错误:
如何解决这个问题?
python - 支持黑盒的 Python 调试器?
如果我使用调试器,大多数时候我只想看看解释器在我的代码中做了什么。我想跳过我使用的框架和库的所有代码。
AFAIK 这被称为黑拳。
如何使用 Python ipdb 或其他 Python 调试器执行此操作?
想象一下:
我使用我信任的 orm 框架,并且不想调试。
该方法cut_hair_method()
是我的,我想调试它。
来自我使用的orm_object
框架。调试器将进入 orm-code 并做一些我不关心的特殊事情。我没有办法告诉调试器:不要跳入orm代码!
更新
对于我的情况,很容易决定哪些代码应该在黑盒中,哪些代码不应该:代码$VIRTUAL_ENV/src/
不在黑盒中,所有其他代码都在。除非我明确告诉调试器别的东西。
更新2
我有这篇文章中的“黑拳”这个名字:https ://hacks.mozilla.org/2013/08/new-features-of-firefox-developer-tools-episode-25/
python - ipython事后调试:外部函数的范围
考虑以下代码:
在 IPython 中,引发异常后,%debug
行魔术会在以下范围内打开 python 调试器inner()
:
您如何告诉 (i)pdb 进入范围outer()
以保存到目前为止生成的结果?
python - tab-completion 在运行 ipdb 的 emacs shell 中不起作用(但在普通 bash shell 中它起作用)
我一直在尝试各种 stackoverflow 讨论中的很多提示和技巧以及更多,但我无法解决这个问题,请帮助:
什么在我的 bash shell 中有效:
我有这个 python 脚本:
当我运行它时,我得到了预期的 ipdb 提示,当我输入“a.TAB”时,一些自动完成功能会建议所有这样的功能:
什么在我的 EMACS shell 中不起作用:
当我做同样的事情,但随后在 emacs shell 中时,选项卡完成不起作用。我指的是 TAB 和 M-TAB。在这种情况下,Emacs 告诉我“不匹配”。顺便说一句:当我编辑 python 文件时,M-TAB确实完成了。这整件事对我来说有点令人讨厌(这是一个轻描淡写的说法)。
我已经安装了许多建议的软件包:
顺便说一句:此设置中没有选项 Mx RET jedi:install-server。
我的环境:
我也尝试过:
我还尝试(也没有工作)使用安装软件包的不稳定 melpa 源( http://melpa.milkbox.net/packages ):
顺便说一句:此设置中提供了Mx RET jedi :install-server 选项。
有任何想法吗 ... ?
python - Python Debugging Using Pdb
I'm using a interactive graphical Python debugger with ipdb under the hood (Canopy's graphical debugger). The script I am working on has multiple imported modules and several calls to their respective functions. Whenever I attempt a debugging run, execution gets stuck somewhere within a call to an imported module's function (specifically subprocess). My two main questions are:
1) Does running in debug mode slow things down considerably? Is the code not actually stuck, but just running at a painfully slow rate?
2) Is there a way to completely pass over bits of code and run them as if I were not even debugging? I want to prevent the debugger from diving into subprocess and just execute it as if it were a normal run.
I might toss the graphical debugger and do everything from a terminal, but I would like to avoid that if I can because the graphical interface is really convenient and saves a lot of typing.
python - 在调试和重新加载所有模块时重新运行代码
在调试我的 Python 代码时,我从命令行通过 ipdb 运行一个脚本,并设置了一些断点。然后我对一个或多个模块进行一些更改,然后重新运行。但是,如果我只是使用run
模块,则不会重新加载。为了确保它们这样做,我可以完全退出并重新启动 Python,但是我需要重置所有断点,如果我有很多并且一遍又一遍地完成,这将是乏味的。
有没有办法重新启动 (i)pdb 中的运行,并确保所有模块都被递归重新加载?
python - Save breakpoints to file
When debugging my Python code, I run a script through ipdb from the commandline, and set a number of breakpoints. Then I make some changes in one or more modules, and rerun. However, if I simply use run modules do not get reloaded. To make sure they do, I can exist and restart Python completely, but then I need to reset all breakpoints, which is tedious if I have many and if done over and over again.
Is there a way to save breakpoint to a file in (i)pdb, so that after small changes that do not change line numbers, I can dump my breakpoints, restart Python + pdb, and reload my breakpoints? The equivalent to Matlabs X = dbstatus
, saving/loading X
, and setting dbstop(X)
.