Python - print () - отладка - показать файл и номер строки

При использовании print() в python можно ли печатать там, где он был вызван? Таким образом, вывод будет выглядеть как var_dump в php с помощью xdebug. Например. У меня есть скрипт D:\Something\script.py, а в строке 50 есть print("sometest"), поэтому вывод будет выглядеть так:

D:\Somethinq\script.py:50 sometest

Или есть какой-нибудь модуль, который мог бы достичь этого? В больших проектах очень сложно управлять тем, откуда взялись эти отпечатки.


person Adam Ježek    schedule 10.08.2017    source источник


Ответы (1)


Итак, используя ответы, представленные в имя файла и номер строки скрипта Python, эта функция может быть вызвана вместо print() и печатает номер строки перед каждым выводом:

from inspect import currentframe

def debug_print(arg):
    frameinfo = currentframe()
    print(frameinfo.f_back.f_lineno,":",arg)
person Adam Ježek    schedule 10.08.2017