擅长:python、mysql、java
<p>不是一个答案,一个后续问题(因为我不能添加一个没有50个声誉的评论),你能详细说明或使用简单的术语,因为这里的答案超出了我的理解。
我在玛雅使用按钮也有类似的问题</p>
<pre><code>import maya.cmds as cmds
from functools import partial
class Myclass(object):
def __init__(self):
pass
def createui(self):
derp = cmds.window()
cmds.formLayout()
cmds.button(label = "w/e", c = partial(self.f, x = 3))
cmds.showWindow(derp)
def f(self, x = 5, y = 3, *_):
print(x+y)
herp = Myclass()
herp.createui()
</code></pre>
<p>单击按钮将给出相同的错误“got multiple values for keyword argument'x'”</p>
<p>尽管我认为作为参数发送的是对类的调用,但对UI元素本身的一些愚蠢的调用(通常是False的值)应该放在*\catch all参数中,然后放在x的keyword参数中</p>