Как сохранить добавленную функцию отладчика Python, чтобы оставаться в области видимостиPython

Программы на Python
Ответить
Anonymous
 Как сохранить добавленную функцию отладчика Python, чтобы оставаться в области видимости

Сообщение Anonymous »

После примера Лави Кумара кажется, что импорт пакета pdbext.debug в ~/.pdbrc выходит за рамки при вызове другого исходного файла.
~/.pdbrc:

Код: Выделить всё

!import pdbext.debug

alias pl !pdbext.debug.debug_print (locals ())
в /usr/local/lib/python3.4/site-packages/pdbext/debug.py:

Код: Выделить всё

def debug_print (d):
print ("debug_print() d = ",d, flush = True)
return
test.py:

Код: Выделить всё

import test2

def test1 ():
i = 0
print ("test1 ()", flush = True)
test2.test3 ()
return

test1 ()
test2.py:

Код: Выделить всё

def test3 ():
a = 4
print ("test3 ()", flush = True)
return
Сеанс PDB:

Код: Выделить всё

python3 -m pdb test.py

(Pdb) b 6

(Pdb) continue

(Pdb) pl
shows: debug_print() d =  {'i': 0}

(Pdb) step

(Pdb) step   (this puts pdb in test2.test3())

(Pdb) pl
shows: *** NameError: name 'pdbext' is not defined
Может кто-нибудь объяснить, как всегда сохранять импорт pdbext.debug в области видимости?
Заранее спасибо

Подробнее здесь: https://stackoverflow.com/questions/798 ... y-in-scope
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»