• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > python获取当前运行函数名称的方法实例代码

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

作者:lqh 字体:[增加 减小] 来源:互联网

lqh 通过本文主要向大家介绍了python函数实例,python脚本编写实例,python开发实例,python项目实例,python开发网站实例等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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]      #获取名称
调用方法

</div>

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

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

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)
</div>
#测试代码
def test1():
  print getCurRunPosInfo()

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

</div>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

</div>

您可能想查找下面的文章:

  • python获取当前运行函数名称的方法实例代码
  • 实例讲解Python中函数的调用与定义
  • 实例讲解Python中函数的调用与定义
  • Python中函数的参数定义和可变参数用法实例分析
  • python回调函数用法实例分析
  • python简单的函数定义和用法实例
  • Python函数嵌套实例
  • Python内置函数的用法实例教程
  • Python中函数的用法实例教程
  • Python内置函数的用法实例教程

相关文章

  • Python和Perl绘制中国北京跑步地图的方法
  • Python 常用的安装Module方式汇总
  • 用Python实现web端用户登录和注册功能的教程
  • Python中的MongoDB基本操作:连接、查询实例
  • Python判断直线和矩形是否相交的方法
  • python查找第k小元素代码分享
  • python计算最小优先级队列代码分享
  • Python学习资料
  • Python中自定义函数的教程
  • 简述Python中的进程、线程、协程

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • python 装饰器功能以及函数参数使用介绍
    • 多线程爬虫批量下载pcgame图片url 保存为xml的实现代码
    • Python实现二分查找算法实例
    • Python linecache.getline()读取文件中特定一行的脚本
    • python线程锁(thread)学习示例
    • python开发的小球完全弹性碰撞游戏代码
    • python 装饰器功能以及函数参数使用介绍
    • python爬取本站电子书信息并入库的实现代码
    • 浅析Python的Django框架中的Memcached
    • Python字符串处理之count()方法的使用

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有