我在网上看到过很多这种说法,但没有明显的规律或理由。 创建事件绑定时,为什么调用“lambda:thefunction()”而不是仅仅传递“thefunction”? -- 尤其是当没有任何东西需要传递给所述函数时?
即。
self.button = tk.Button(root, command= lambda:arb_func_call()
与 self.button = tk.Button(root, command= arb_func_call
这是风格问题还是有理由使用 x 而不是 y?
没有理由使用
lambda
作为按钮的 command
属性,除非您需要命令传递一个或多个参数。不带参数的 lambda
只会让代码变得比需要的更复杂。