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

如何在Python中通过字典实现方法链式调用自动化?

动态实现Python链式调用方法

现有一个Example类的实例e,其perform_action方法支持链式调用,示例如下:

e = Example()
instance_copy = e.perform_action("A", "Good")
                 .perform_action("B", "Very Good")
                 .perform_action("C", "Poor")

现需根据给定字典d = {'A': 'Good', 'B': 'Very Good', 'C': 'Poor', 'D': 'Very Poor'},自动实现上述相同的方法链式调用流程,要求链式调用长度可随字典大小动态调整,无需关注Example类的具体实现。请问该如何在Python中实现?

解决方案

你可以通过迭代字典的键值对,逐步构建链式调用,代码实现非常简洁:

e = Example()
current = e
for key, val in d.items():
    current = current.perform_action(key, val)
instance_copy = current

逻辑说明

  • 以原始实例e作为链式调用的起始点,用临时变量current保存当前实例状态
  • 遍历字典中的每一组键值对,每次调用perform_action后,将返回的新实例更新到current中
  • 遍历结束后,current就等价于手动完成所有链式调用后的实例,直接赋值给instance_copy即可

这种写法完全适配字典的动态大小,不管字典新增或删除键值对,都会自动调整链式调用的次数,且不需要了解Example类的内部实现,只依赖perform_action方法的链式特性(即方法返回可继续调用该方法的实例)。

内容的提问来源于stack exchange,提问作者rishm.msc

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 22:52:05