我想通过将其名称作为字符串传递给其自身来重命名python函数。
例如。
def ihavenoname(new_name="cheese"): something.this_function.name= new_name # https://stackoverflow.com/questions/251464/how-to-get-a-function-name-as-a-string-in-python import traceback stack = traceback.extract_stack() filename, codeline, funcName, text = stack[-2] return funcName >>>"cheese"==ihavenoname() # True
这个是可能的吗?
【玩转 GPU】有奖征文
精美礼品等你拿!
您可以通过更改 __name__ 来重命名函数。您可以简单地创建一个装饰器,并使用它来重命名函数名称-
__name__
def rename(newname): def decorator(fn): fn.__name__ = newname