【发布时间】:2014-01-12 17:18:14
【问题描述】:
当使用pdb 调试curses 应用程序时,交互式调试器是无用的,因为curses 会弄乱终端屏幕。虽然调试事后分析是可行的,但这有点有限。
所以我们可能需要让调试器在与被调试对象(被调试的应用程序)分开的终端中工作。
一些应用远程调试的替代方案(例如xpdb)似乎不适用于python 3.3,或者由于其他原因出现奇怪的错误。
那么我怎样才能在不同的终端中使用pdb,或者以另一种正确的方式?
【问题讨论】:
-
关系:How to effectively debug a multi-threaded curses client-server application with gdb?。原则应该是一样的。您也可以改用
pdb模块并使用不同的stdin/stdout文件实例化Pdb。 -
pdb似乎没有像gdb那样的tty命令。 -
将标准输入/标准输出更改为单独的终端似乎适用于
set_trace()。但是,有几件事不能正常工作,例如完成、命令历史记录等。 -
可能这是一个缺失的功能。您应该尝试在 python 的问题跟踪器上开一张票,也可能在
pdb-clone问题跟踪器上开一张票。
标签: python debugging python-3.3 curses