pdb, отладчик Python по умолчанию, имеет недокументированную команду (?) retval
, которая печатает возвращаемое значение текущей функции, если вы уже вычислили ее и на один шаг от возврата к кадру вызывающего.Как проверить возвращаемые значения в отладчике Winpdb Python без изменения исходного кода?
Есть ли аналогичная функциональность в графическом Winpdb отладчике? Я не могу найти возвращаемое значение где угодно, и он не распознает retval как команду.
Кстати, я знаю, что я мог бы просто добавить переменную посреднику и проверьте, что вместо того, чтобы, но я хотел бы избежать необходимости редактирования коды я отладка, особенно, когда его из библиотеки третьей стороны.
#original code
def f(x):
return x+1
#debugging code
def f(x):
r = x+1
return r
Наконец, я также открыт для альтернативных отладчиков, пока у них есть графический интерфейс, работать на Linux и не поставляются в комплекте внутри IDE.
насчет просто дать команду консоли, для примера, 'Eval х + 1'? – ikdc
@IstvanChung: Это отличный вариант, который должен делать трюк большую часть времени, но я бы не хотел этого делать, если возвращаемое выражение имеет побочные эффекты. – hugomg