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

Python如何查找调用指定类的函数并在类中输出调用方名称

解决方案

可以实现,借助Python标准库的inspect模块读取调用栈信息即可,不需要额外安装第三方依赖。
完整实现代码如下:

import inspect

class A:
    def __init__(self):
        # 调用栈索引1对应实例化A的上一层栈帧
        caller_frame = inspect.stack()[1]
        # 获取调用方的函数名
        caller_func = caller_frame.function
        print(f"i was used in: {caller_func}()")

def my_func():
    a = A()

# 测试运行
my_func()

运行上述代码后会直接输出目标结果:i was used in: my_func()

如果类A是在全局作用域而非函数内部实例化,拿到的调用名会是<module>,可以根据实际需求补充对应适配逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 19:24:03