How to create functors?
Diez B. Roggisch
deets at nospam.web.de
Tue Aug 18 17:24:38 EDT 2009
> The example I gave earlier is a bit contrived, the real example
> fundamentally requires a lambda since I am actually passing in local
> variables into the functions the lambda is wrapping. Example:
funcs = []
for i in xrange(10):
def f(i=i):
print i
funcs.append(f)
for f in funcs:
f()
> This is more or less like the real scenario I'm working with. There
> are other (more personal) reasons why I prefer to avoid 'def' in this
> case. I want to keep the functor as central to the code that needs it
> as possible to improve code readability.
Didn't you say the other day you came from C++? Given the galactic
amount of hoops to jump through that language has to offer, typing
def f
instead of the even longe
lambda
strikes me as rather peculiar.
Diez
More information about the Python-list
mailing list