【发布时间】:2015-10-12 13:18:44
【问题描述】:
我想修改 Python 3.4 内置调试器的源代码,pdb(我假设它是用 Python 编写的)。我想添加一些代码,以便在输入时:
pdb.set_trace(locals())
在我的代码中,它在控制台中调用标准的pdb 接口,并自动显示有关我的本地环境变量的格式化信息,如下表所示。
谁能指出pdb的源代码?
-------------------- Objects: -----------------------------------[2000]
[Name: dog] [Data type: "Dog"] [2100]
+------+-------+-------+-------+------------+------------+
| ID | breed | color | name | size | uuid |
+------+-------+-------+-------+------------+------------+
| 2110 | lynx | black | dog-3 | large!!!!! | e30475ad-9 |
+------+-------+-------+-------+------------+------------+
[Name: cat] [Data type: "Cat"] [2200]
+------+-------+-------+---------+------------+
| ID | breed | color | name | size |
+------+-------+-------+---------+------------+
| 2210 | lynx | black | kitty-5 | large!!!!! |
+------+-------+-------+---------+------------+
-------------------- Lists of Objects: --------------------------[3000]
[Name: cats] [Data type: "list"] [3100]
+------+-------+-------+---------+------------+
| ID | breed | color | name | size |
+------+-------+-------+---------+------------+
| 3110 | lynx | black | kitty-1 | large!!!!! |
| 3120 | lynx | black | kitty-2 | large!!!!! |
| 3130 | lynx | black | kitty-3 | large!!!!! |
| 3140 | lynx | black | kitty-4 | large!!!!! |
| 3150 | lynx | black | kitty-5 | large!!!!! |
+------+-------+-------+---------+------------+
[Name: dogs] [Data type: "list"] [3200]
+------+-------+-------+-------+------------+------------+
| ID | breed | color | name | size | uuid |
+------+-------+-------+-------+------------+------------+
| 3210 | lynx | black | dog-1 | large!!!!! | e30475ad-9 |
| 3220 | lynx | black | dog-2 | large!!!!! | e30475ad-9 |
| 3230 | lynx | black | dog-3 | large!!!!! | e30475ad-9 |
+------+-------+-------+-------+------------+------------+
【问题讨论】:
-
你知道在the documentation的顶部有一个指向源代码:的链接,对吧?它会将您带到在线 Mercurial 存储库:hg.python.org/cpython/file/3.4/Lib/pdb.py
标签: python debugging python-3.x pdb