当前位置:   article > 正文

python函数内部获取函数名的两种方式_sys._getframe().f_code.co_name

sys._getframe().f_code.co_name

Python中从函数内部获取函数名和文件名,路径等的两种方式:
1.用sys模块中的_getframe().f_code.co_name获取函数名,sys里获取文件名的方法。
sys._getframe().f_code.co_filename #当前文件名,可以通过__file__获得
sys._getframe(0).f_code.co_name #当前函数名
2.用inspect模块中的inspect.stack(),获取到的内容里面有函数名,路径的等很多内容,可以用下标取要想的。
获取跟文件和路径有关的,个人感觉os模块更加方便一些。
两种方法案例如下:

import inspect
import sys


def fun_aaa():
    fun_name = sys._getframe().f_code.co_name
    print(fun_name)
    a = 1
    return a


def fun_bbb():
    print(inspect.stack()[0][3])
    b = 2
    return b


if __name__ == '__main__':
    a = fun_aaa()
    b = fun_bbb()
    print(a, b)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
运行结果:
fun_aaa
fun_bbb
1 2
  • 1
  • 2
  • 3
  • 4
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/301494
推荐阅读
相关标签
  

闽ICP备14008679号