On Tue, Dec 9, 2014 at 10:43 AM, memilanuk <memila...@gmail.com> wrote: > What I'm having trouble finding a concrete answer to is the difference > between: > > lambda: some_func > > lambda e: some_func
These two are quite simple. (In each case, it's an expression, not a function, for what it's worth.) They're (roughly) equivalent to these functions: def anonymous(): return some_func def anonymous(e): return some_func In other words, the second one takes an argument, the first doesn't. > lambda e=e: some_func I'm not sure what this one ought to be; do you have an example? If the "e=" part comes before the "lambda", though, then it's simply a named argument getting a lambda function bound to it. In your example above, this: Radiobutton(... command=lambda: update_label2('A', 100)) is equivalent to this: def anonymous(): return update_label2('A', 100) RadioButton(... command=anonymous) It's that simple. ChrisA -- https://mail.python.org/mailman/listinfo/python-list