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

如何实现Python类嵌套属性/方法调用时输出路径并返回指定值?

构建追踪嵌套属性/方法调用的Python类

我在处理递归问题时遇到困难,希望构建一个具备以下特性的Python类:

  • 调用嵌套属性时输出属性路径,例如o.foo.bar被调用时输出"o.foo.bar";
  • 调用嵌套方法时输出方法调用路径,例如o.foo.bar(True)输出"o.foo.bar(True)";
  • 上述属性/方法调用最终返回指定值,例如返回"1"。

示例代码

>>> o = MyClass()
>>> result = o.foo.bar
"o.foo.bar"
>>> print(result)
1

我尝试的代码

class MyClass:
    def __init__(self):
        self.a = []

    def __getattr__(self, name):
        self.a.append(name)
        print(self.a)
        return self

o = MyClass()
result = o.foo.bar

用途说明

这是简化后的代码,用于剥离复杂上下文。我当前正在尝试封装Photoshop的JS API,该类可帮助我通过编写相同的API函数在Python中调用Photoshop功能。其中print操作将替换为对PS Server的调用,result将替换为调用的实际结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 09:06:07