2017-08-10 114 views
0

在python中使用print()時,是否可以打印它被調用的位置?所以在xdebug中,輸出看起來像php中的var_dump。例如。我有腳本d:\東西\ script.py,並在第50行,有打印(「sometest」),所以輸出會是這樣的:Python - print() - 調試-show文件和行號

D:\Somethinq\script.py:50 sometest 

還是有可能實現的任何模塊這個?在大型項目中,管理這些印刷品的來源真的很難。

回答

0
每個輸出前

因此,使用filename and line number of python script提供的答案,這個函數可以調用,而不是打印(),並打印行數:

from inspect import currentframe 

def debug_print(arg): 
    frameinfo = currentframe() 
    print(frameinfo.f_back.f_lineno,":",arg)