You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取执行当前代码的函数名称?

获取当前执行的函数名称(Python)

以下几种方法可以实现你要的效果,操作简单直接:

方法1:使用inspect.currentframe()

通过栈帧对象直接提取函数名称,推荐这种方式,内存友好:

import inspect

def example(foo: str = "bar"):
    # 获取当前函数对应的栈帧
    frame = inspect.currentframe().f_back
    try:
        print(frame.f_code.co_name)  # 输出:example
    finally:
        del frame  # 释放栈帧引用,避免内存泄漏

方法2:使用inspect.stack()

从栈信息列表中读取函数名,代码更简洁:

import inspect

def example(foo: str = "bar"):
    # 栈列表第一个元素对应当前函数的执行上下文
    print(inspect.stack()[0].function)  # 输出:example

方法3:直接引用函数__name__属性

如果函数名固定不变,可直接静态引用:

def example(foo: str = "bar"):
    print(example.__name__)  # 输出:example

说明:前两种是动态获取方式,即使函数名被修改或赋值给其他变量,依然能正确拿到当前执行的函数名;第三种是静态引用,函数名变更后需要同步修改代码。

内容的提问来源于stack exchange,提问作者vlone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 13:41:02