[Python-Dev] Shorthand for lambda
Ka-Ping Yee
python-dev at zesty.ca
Wed Mar 23 17:33:53 CET 2005
Hey folks,
I'm sitting over here in the AppleScript talk and Jacob is explaining a
module called 'appscript' that interfaces to the Apple Events system.
What caught my eye was this example:
from appscript import *
ab = app('Address Book')
people = ab.people.filter(its.emails != [])
That last line asks the Address Book to select only entries with
e-mail addresses. The weird 'its' object comes from the appscript
module -- asking for its properties and using operators causes it
to set up thunks for you.
It dawned on me that you could use this idea to make the whole
filter/lambda experience vastly more pleasant. I whipped up a quick
implementation:
>>> from placeholder import _
>>> numbers = [5, 9, 56, 34, 1, 24, 37, 89]
>>> filter(_ < 30, numbers)
[5, 9, 1, 24]
>>> map(_ + 10, numbers)
[15, 19, 66, 44, 11, 34, 47, 99]
>>>
Look ma, no lambdas!
I bet someone has already done this before, right?
-- ?!ng
More information about the Python-Dev
mailing list