Le lundi 7 Février 2005 21:21, Steven Bethard a écrit : > Francis Girard wrote: > > Le lundi 7 Février 2005 20:30, Steven Bethard a écrit : > >>especially since I avoid lambda usage, and would have to write these as: > > > > Why avoid "lambda" usage ? You find them too difficult to read (I mean in > > general) ? > > Yup, basically a readability thing. I also tend to find that if I > actually declare the function, I can often find a way to refactor things > to make that function useful in more than one place. > > Additionally, 'lambda' is on Guido's regrets list, so I'm avoiding it's > use in case it gets yanked for Python 3.0. I think most code can be > written now without it, and in most cases code so written is clearer. > Probably worth looking at is a thread I started that went through some > stdlib uses of lambda and how they could be rewritten: > > http://mail.python.org/pipermail/python-list/2004-December/257990.html > > Many were rewritable with def statements, list comprehensions, the > operator module functions, or unbound or bound methods. > > Steve
I see. I personnaly use them frequently to bind an argument of a function with some fixed value. Modifying one of the example in http://mail.python.org/pipermail/python-list/2004-December/257990.html I frequently have something like : SimpleXMLRPCServer.py: server.register_1arg-place_function(lambda x: x+2, 'add2') If "Guido" don't like lambdas, he would have to give me some way to easily do this. Something like (or similar to fit Python syntax) : SimpleXMLRPCServer.py: server.register_1arg-place_function(\+2, 'add2') This would be great. Regards Francis Girard server.register_function(operator.add, 'add') -- http://mail.python.org/mailman/listinfo/python-list