关于Python3中的lambda函数在tkinter中的小妙用


lambda在python3中看似不起眼,但是它其实有很多的小妙用。本文将介绍一下lambda在tkinter中有啥神奇的用处。

先来了解下什么是lambda,通俗的讲他就是低调的一句话函数,因为他连函数名字都不用定义,是不是很低调啊,为啥说他是一句话函数,也因为他真的就只能写一句话的表达式而已。所以他的语法其实也很简单:lambda arg: expression。lambda是关键字,arg是形参,也就是函数的输入,我们知道函数的输入可有可无,所以arg也是可有可无的;输出就是expression,也就是函数体内部表达式,这个表达式的特殊之处就是只能写一行,比如a=b就完了。

现在看下在tkinter如何使用,当我们创建一个菜单,并添加command的时候,如果采用lambda方式就可以正常执行,menu.add_command(label=’关于',command=lambda:tk.messagebox.showinfo(title='关于', 'hello')

要是去掉lambda就不能正常执行,这是很奇妙的地方。

关于Python3中的lambda函数在tkinter中的小妙用