我有一个python3.x脚本,我正在传递一个字符串作为参数。如果我使用文本字符串,它会工作,但当我将其作为变量传递时,我得到: “接受2个位置参数,但给出了3个”
network_id和mtag在上面的for循环中填充,但是我使用了这段代码并手动运行了它,得到了相同的响应。如果在network_id之后插入,则不带“”的mTags的值将正确处理,但这种方式不会正确处理。需要帮助了解正在发生的情况以尝试修复此问题
network_id = N_573083052582975205
mTags = "tags=['1504007', '3850357_all', '3850373_all']"
response = dashboard.networks.updateNetwork(network_id, mTags)
return response
看起来您对参数类型和参数的传递方式有点困惑
在source code中,
updateNetwork
是一个方法,签名是updateNetwork(self, networkId, **kwargs)
当您使用类的方法时,
self
会自动作为该方法的属性实例传入你在干什么
这是在呼吁:
但这与签名不符。签名中可以有两个位置参数,其余必须是关键字参数
下一个问题是,您分配给
mTags
的是一个字符串。但是tags
实际上应该是一个列表。您可以通过取消该字符串的引号并去掉无用的mTags
赋值来解决这个问题总的来说,你会:
相关问题 更多 >
编程相关推荐