我对 Python 很陌生,我正在研究一个用 Python 编写的开源框架。我正在尝试更深入地研究源代码。我不明白为什么这行代码需要“任意参数”和“任意关键字参数” :
observerCallback = lambda *args, **kwargs: self.pushRender(realViewId)
基本上是因为,最后,它们没有在“被调用”方法中使用:
def pushRender(self, vId, ignoreAnimation = False):
...
那么,再一次:在这里使用 *args 和 **kwargs 的目的是什么?我知道这可能看起来像一个愚蠢的问题,但我现在才知道这个“特殊运算符”的含义,在花了几天时间探索这个源代码之后,我的大脑几乎失去了工作。如果有人可以帮助我更好地理解一点,我当然真的很感激。