python获取当前运行函数名称的方法实例代码
发布时间 - 2026-01-11 00:32:09 点击率:次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如何获取运行函数
# python获取运行函数方法
# Python使用多进程运行含有任意个参数的函数
# Python中统计函数运行耗时的方法
# Python 代码在函数中运行得更快的原因解析
# 行号
# 将其
# 请在
# 可以通过
# 希望能
# 很简单
# 但也
# 谢谢大家
# peterguo
# vip
# py
# author
# qq
# import
# sys
# def
# get_func_name
# python
# class
# brush
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
香港服务器租用费用高吗?如何避免常见误区?
个人网站制作流程图片大全,个人网站如何注销?
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
如何在阿里云虚拟服务器快速搭建网站?
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
QQ浏览器网页版登录入口 个人中心在线进入
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
如何在宝塔面板中创建新站点?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】
Laravel怎么在Blade中安全地输出原始HTML内容
如何用美橙互联一键搭建多站合一网站?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
Laravel如何实现事件和监听器?(Event & Listener实战)
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权
Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
Java遍历集合的三种方式
实例解析Array和String方法
Laravel如何与Pusher实现实时通信?(WebSocket示例)
WEB开发之注册页面验证码倒计时代码的实现
Laravel如何使用Vite进行前端资源打包?(配置示例)
Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
网站制作软件有哪些,制图软件有哪些?
javascript日期怎么处理_如何格式化输出
Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
如何确保FTP站点访问权限与数据传输安全?
简单实现Android验证码
如何在万网主机上快速搭建网站?
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
Laravel怎么实现微信登录_Laravel Socialite第三方登录集成
公司网站制作价格怎么算,公司办个官网需要多少钱?
phpredis提高消息队列的实时性方法(推荐)
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
如何在景安服务器上快速搭建个人网站?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
Python面向对象测试方法_mock解析【教程】
智能起名网站制作软件有哪些,制作logo的软件?
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道

