Python-如何获得一个函数名作为字符串?
在Python中,如何在不调用函数的情况下以字符串形式获取函数名称?
def my_function(): pass
print get_function_name_as_string(my_function) # my_function is not in quotes
应该输出"my_function"
。
此类功能在Python中可用吗?如果没有,关于如何get_function_name_as_string
在Python中实现的任何想法?
回答:
my_function.__name__
使用__name__
是首选的方法,因为它可以统一应用。与不同func_name,它还可以用于内置函数:
>>> import time>>> time.time.func_name
Traceback (most recent call last):
File "<stdin>", line 1, in ?
AttributeError: 'builtin_function_or_method' object has no attribute 'func_name'
>>> time.time.__name__
'time'
同样,双下划线向读者表明这是一个特殊的属性。另外,类和模块也具有__name__
属性,因此你只记得一个特殊名称。
以上是 Python-如何获得一个函数名作为字符串? 的全部内容, 来源链接: utcz.com/qa/429034.html