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

Python中如何将参数名作为参数传入函数?含报错咨询

在Python中将参数名作为参数传入函数的解决方法

你的核心问题是:想要动态指定调用AGOLlayer.edit_features时的关键字参数名,但当前写法错误地把变量名当成了参数名,或者未正确使用字符串参数。

正确解决方案

通过字典解包实现动态关键字参数传递:

def edit_features_retry(editType, data):
    # 用传入的参数名构造字典,再通过**解包为关键字参数
    AGOLlayer.edit_features(**{editType: data})

# 调用时传入字符串格式的目标参数名
edit_features_retry("adds", datalayer)

错误原因说明

  • 第一种写法中,edit_features(editType=data)是将editType作为固定关键字传递,但AGOLlayer.edit_features不接受该参数名,因此触发TypeError。
  • 第二种写法直接写adds(无引号),Python会将其视为变量,但你未定义过该变量,因此触发NameError。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 17:12:37