最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

利用python获取当前运行函数名称的方法

来源:动视网 责编:小采 时间:2020-11-27 14:24:38
文档

利用python获取当前运行函数名称的方法

利用python获取当前运行函数名称的方法:这篇文章主要介绍了php.cn/wiki/1514.html target=_blank
推荐度:
导读利用python获取当前运行函数名称的方法:这篇文章主要介绍了php.cn/wiki/1514.html target=_blank


这篇文章主要介绍了php.cn/wiki/1514.html" target="_blank">python获取当前运行函数名称的方法实例代码的相关资料,需要的朋友可以参考下

python获取当前运行函数名称的方法实例代码

摘要: c/c++中获取函数所在源码名,函数名和行号的方法很简单 FILE,FUNCTION和LINE python没有这种语法,但也可以通过某种方法得到,这里给出例子,使用异常信息得到【可能会损失性能】

直接贴代码[可参考python核心编程4.4]

#获取调用该函数所在(被调用)的函数名

#author:peterguo@vip.qq.com 
def get_func_name():
 import sys
 try:
 raise Exception
 except:
 exc_info = sys.exc_info() #返回 异常类型,异常,traceback对象
 traceObj = exc_info[2] #traceback对象
 frameObj = traceObj.tb_frame #获取frame对象,即本函数的frame信息
 #print frameObj.f_code.co_name,frameObj.f_lineno #请在使用的时候将其注释
 Upframe = frameObj.f_back #获取该代码段的frame信息,即调用该函数的函数frame
 #print Upframe.f_code.co_name, Upframe.f_lineno #请在使用的时候将其注释
 return (Upframe.f_code.co_name, Upframe.f_lineno)[0] #获取名称
调用方法

获取文件名路径,函数名,行号

------------------------------------------------------------------------------

def getCurRunPosInfo():
 import sys
 try:
 raise Exception
 except:
 exc_info = sys.exc_info() 
 traceObj = exc_info[2] 
 frameObj = traceObj.tb_frame 
 #print frameObj.f_code.co_name,frameObj.f_lineno
 Upframe = frameObj.f_back 
 #print Upframe.f_code.co_name, Upframe.f_lineno 
 return (Upframe.f_code.co_filename, Upframe.f_code.co_name, Upframe.f_lineno)
#测试代码
def test1():
 print getCurRunPosInfo()

def test2():
 print get_func_name()
 
输出: >>('demo.py', 'test1', 44) >>test2

文档

利用python获取当前运行函数名称的方法

利用python获取当前运行函数名称的方法:这篇文章主要介绍了php.cn/wiki/1514.html target=_blank
推荐度:
标签: 利用 方法 获取
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top