Parameterized functions of no arguments?
Paul Rubin
no.email at nospam.invalid
Fri Feb 11 01:19:57 EST 2011
More information about the Python-list mailing list
Fri Feb 11 01:19:57 EST 2011
- Previous message (by thread): Parameterized functions of no arguments?
- Next message (by thread): Parameterized functions of no arguments?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Rotwang <sg552 at hotmail.co.uk> writes: > menu = Tkinter.Menu(master, tearoff = 0) > for k in x: > def f(j = k): > [do something that depends on j] > menu.add_command(label = str(k), command = f) > > Still, I'd like to know if there's a more elegant method for creating > a set of functions indexed by an arbitrary list. That is a standard python idiom. These days maybe I'd use partial evaluation: from functools import partial def f(k): whatever... for k in x: menu.add_command(label=str(k), command=partial(f, k)) the "pure" approach would be something like def f(k): whatever... for k in x: menu.add_command(label=str(k), command=(lambda x: lambda: f(x))(k))
- Previous message (by thread): Parameterized functions of no arguments?
- Next message (by thread): Parameterized functions of no arguments?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list