Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python检查模块python存在问题_Python - Fatal编程技术网

python检查模块python存在问题

python检查模块python存在问题,python,Python,如何编写程序“识别函数调用的行号?” python inspect模块提供了定位行号的选项,但是 def di(): return inspect.currentframe().f_back.f_lineno 此python代码打印当前行号 为什么不使用inspect.stack() 我发布了一个用于inspect的包装器,它使用简单的堆栈帧寻址,通过单个参数spos覆盖堆栈帧: 例如。 pysourceinfo.pysourceinfo.getCallerLinenumber

如何编写程序“识别函数调用的行号?”

python inspect模块提供了定位行号的选项,但是

def di():
  return inspect.currentframe().f_back.f_lineno 

此python代码打印当前行号

为什么不使用
inspect.stack()


我发布了一个用于inspect的包装器,它使用简单的堆栈帧寻址,通过单个参数
spos
覆盖堆栈帧:

例如。
pysourceinfo.pysourceinfo.getCallerLinenumber(spos=1)


其中,
spos=0
是lib函数,
spos=1
是调用方,
spos=2
是调用方的调用方,等等。

文件名是元组的第二部分:
frame,filename,lineno,…=inspect.stack()[1]
def get_caller_lineno():
    frame, _, lineno, _, _, _ = inspect.stack()[1]
    return lineno