python调用方法,获取当前模块路径和代码行
这种调用在写日志模块时,非常有用!!!
被调用的方法所在的模块 demo01.py
import sys
def func():
#该方法被调用时,获取所在的模块名
modulePath = sys._getframe().f_back.f_code.co_filename
#该方法被调用时,获取所在的代码行
lineNo = sys._getframe().f_back.f_lineno
return modulePath,lineNo
运行的模块 main.py
import demo01
print(demo01.func()) #这是第2行
输出结果:(‘E:/alarmPy/demo/main.py’, 2)
在main.py调用demo01.py中func()方法时,获取的是main.py的路径和方法运行的代码行