2015-07-22 4 views
0

Я хотел был бы изменить исходный код встроенного отладчика Python 3.4, pdb (я предполагаю, что он написан на Python). Я хотел бы добавить код так, что когда я ставлю:Где я могу найти исходный код pdb?

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 | 
+------+-------+-------+-------+------------+------------+ 
|| lynx | black | dog-1 | large!!!!! | e30475ad-9 | 
| 3220 | lynx | black | dog-2 | large!!!!! | e30475ad-9 | 
| 3230 | lynx | black | dog-3 | large!!!!! | e30475ad-9 | 
+------+-------+-------+-------+------------+------------+ 
+1

Вы знаете, что есть ссылка на ** Исходный код: ** в верхней части [документации] (https://docs.python.org/3/library/pdb.html), правильно? Он доставит вас в онлайн-репозиторий Mercurial: https://hg.python.org/cpython/file/3.4/Lib/pdb.py – jonrsharpe

ответ

1

pdb - это обычный модуль, который поставляется как часть стандартной библиотеки. Таким образом, вы можете просто заглянуть в свою локальную папку lib, чтобы найти источник pdb.py.

Конечно, вы также можете посмотреть его в Интернете, например. на Python source repository.

Смежные вопросы