从python中的函数对象获取易于阅读的函数名称[重复]

Posted

技术标签:

【中文标题】从python中的函数对象获取易于阅读的函数名称[重复]【英文标题】:Getting an easily readable function name from a function object in python [duplicate] 【发布时间】:2014-07-11 23:55:02 【问题描述】:

尝试在Python中获取函数名,我想实现这样的东西:

def my_function():
    do_something...

def get_func_name(function):
    return magic(function)

>>> print get_func_name(my_function)
>>> my_function

这应该怎么做?

非常感谢!

【问题讨论】:

【参考方案1】:

Python 有一个神奇的属性__name__

def get_func_name(function):
    return function.__name__

【讨论】:

【参考方案2】:
def my_function():
    pass

def get_func_name(function):
    try:
        # Python2
        return function.func_name
    except AttributeError:
        # Python3
        return function.__name__

print(get_func_name(my_function))

【讨论】:

以上是关于从python中的函数对象获取易于阅读的函数名称[重复]的主要内容,如果未能解决你的问题,请参考以下文章

python基础之====函数对象函数嵌套名称空间与作用域装饰器

获取python函数中的参数名称列表[重复]

获取python函数中的参数名称列表[重复]

C#如何将变量用作键值字符串数组的对象列表对象构造函数中的属性名称

Python Django 模板无法从模型函数中获取名称

如何为我的 IDE 编写/引用易于管理的 PHP 可调用函数