gpt4 book ai didi

Python pdb——如何更改 "l"命令列出的默认行?

转载 作者:行者123 更新时间:2023-11-28 18:51:40 25 4
gpt4 key购买 nike

我正在尝试从原始 pdb 程序调试我的 python,而不是通过 emacs 运行 pdb(它在代码的文本显示中使用标记跟踪当前行)。 pdb 中的列表命令 l 只显示几行代码,这有点烦人,我宁愿让它用当前函数的所有代码填充我的终端,直到当前行。

我知道我可以手动执行此操作,方法是查看行号并键入 l 50,100(其中 100 是当前行),但这很耗时,我想将其设置为自动运行。

我想知道是否有办法定义一个 pdb 命令来执行此操作?我猜它需要 (1) 访问当前行的编号 N;然后(2)执行“l N-50,N”。我搜索了很多但找不到以前做过这个的人。也许有一种方法可以访问 pdb 模块自己的内部结构来获取行号?

(或者一种迂回的方式是编写调用一次列表的东西,解析输出以提取当前行,然后执行一个新的列表命令,我想知道是否有人已经这样做了?这就是 IDE 设法获得的方式我想知道来自 pdb 的当前行信息还是他们正在使用它的内部信息?)

最佳答案

您可能可以扩展 PDB 类,但扩展接口(interface)没有很好的文档记录。

我建议使用 pdb++及其 sticky 功能,如果我正确理解您的用例,它几乎可以满足您的需求。

关于Python pdb——如何更改 "l"命令列出的默认行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12087398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com