About lambda.

Xin Wang xeranic at yahoo.com
Fri Oct 22 13:56:30 CEST 2004

Some c++ guru said c++ is hard to learn but easy to
use. Is python easy for both aspect? I found lot's of
confused in coding.

from Tkinter import *

def on_click(m):
    print m
def lamb_on_click(m):
    return lambda : on_click(m)
root = Tk()
btns = ['0', '1', '2', '3']
for n in btns:
    b = Button(root, text=n, command=lamb_on_click(n))


    b = Button(root, text=n, command=lambda x=n:
click(x)) #Ok!

The code above works well too, but follow is NOT! WHY?

    b = Button(root, text=n, command=lambda :

Whichever button be clicked, this only print '3'. 

Keyword 'lambda' is just like a macro in c or templete
in c++ or not?

Do you Yahoo!?
Declare Yourself - Register online to vote today!

More information about the Python-list mailing list