Forwarded from GitTools
PySnooper
Инструмент для дебаггинга проектов на Python без использования print.
Вы просто добавляете декоратор к интересующей вас функции и вы получите целый журнал «воспроизведения» вашей функции, включая то, какие строки выполнялись и когда, и когда именно были изменены локальные переменные.
https://github.com/cool-RR/PySnooper
#interesting #python #debug #useful
Инструмент для дебаггинга проектов на Python без использования print.
Вы просто добавляете декоратор к интересующей вас функции и вы получите целый журнал «воспроизведения» вашей функции, включая то, какие строки выполнялись и когда, и когда именно были изменены локальные переменные.
https://github.com/cool-RR/PySnooper
#interesting #python #debug #useful
Forwarded from Offensive Xwitter
Дебажил я тут ASN.1 спеки для MIT-имплементации Кербероса, и вот вам маленький лайфхак для раскуривания масштабных кодовых баз на Python: встроенные интерактивные интерпретатор и дебаггер – ваши друзья на век.
Запиховываете единственный ванлайнер в то место в коде, где потенцивально ожидаетпиздец раскрутка стека исключением, и спокойно изучаете себе окружение:
UPD. @Riocool поделился похожим подходом с помощью "интерпретатора на стероидах" IPython (ставится через PyPI):
Запиховываете единственный ванлайнер в то место в коде, где потенцивально ожидает
import code,sys; code.interact(local=locals()); sys.exit(-1)
import pdb; pdb.set_trace()
Вставлять print("I'm here1"), конечно, романтичнее, но очень скоро утомляет.UPD. @Riocool поделился похожим подходом с помощью "интерпретатора на стероидах" IPython (ставится через PyPI):
from IPython import embed; embed()#python #debug