"Mandus" wrote: > Thu, 09 Jun 2005 03:32:12 +0200 skrev David Baelde: > [snip] > > > > set_callback(obj, > > lambda x: (if a: > > 2 > > else: > > 3) > > > [snip] > > You can do stuff like this: lambda x: x and 2 or 3 > > Of course, you are still quite limited in what you can do, but it have > solved some of my problems...
Another case I've found handy to use lambdas and expressions instead of named functions and statements is for simple properties: class SomeArray(object): dimensions = property( fget = lambda self: (self.x,self.y), fset = lambda self,(x,y): setattr(self,'x',x) or setattr(self,'y',y)) Again, it is quite limited, but properties are also often limited so it's a useful idiom to know. George -- http://mail.python.org/mailman/listinfo/python-list