Greg Ewing wrote: > [x >> key(x) for x in l] # ascending sort > [x << key(x) for x in l] # descending sort > >(Well, we got print >> f, so it was worth a try...) I hope you're not serious about that. As it turns out, I have a proposed syntax for something I call an "accumulation display", and with it I was able to implement and test a SortBy in about a minute. It uses the syntax >>> [SortBy: abs(x) for x in (-2, -4, 3, 1)] [1, -2, 3, -4] where SortBy is an expression (in this case an identifier bound to a class object), not a keyword. Other examples of accumulation displays include: [Sum: x*x for x in numbers] [Product: Prob_spam(word) for word in email_msg] [Min: temp(hour) for hour in range(24)] [Top(10): humor(joke) for joke in jokes] [Argmax: votes[c] for c in candidates] You can read the whole proposal at http:///www.norvig.com/pyacc.html -Peter Norvig
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4