在python中返回函数名? [复制]

Posted

技术标签:

【中文标题】在python中返回函数名? [复制]【英文标题】:Return function name in python? [duplicate] 【发布时间】:2012-10-16 02:01:25 【问题描述】:

执行def 类型的数学函数。

def integral_error(integral,f):
    ------stufff-------
    print integral

给出类似:'<function simpsons at 0xb7370a74>'

有没有办法在没有字符串操作的情况下获得辛普森一家?即只是函数名?

【问题讨论】:

嗯,你很快就得到了一堆答案,可能是因为标题很吸引人,但你真的可以更好地描述问题以及你在寻找什么。 【参考方案1】:

你可以使用:

integral.func_name

或者:

integral.__name__

不过,它们是完全等价的。根据docs:

__name__是func_name的另一种拼写方式

这是一个示例代码:

>>> def f():
    pass

>>> f.__name__
'f'
>>> f.func_name
'f'
>>> 

【讨论】:

你可能想根据the docs添加,func_name__name__是完全等价的。【参考方案2】:

您可以使用integral_error.__name__ 来做到这一点。

【讨论】:

我认为 OP 想要命名为 integral【参考方案3】:

你可以像integral.__name__这样使用__name__

【讨论】:

以上是关于在python中返回函数名? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

返回函数

php函数 返回值

Python传入函数作为参数,打印函数名和结果[重复]

第一类对象(函数),闭包及迭代器

先前声明中的 G++ 错误,由于包含中的重复函数名而导致的错误

def