Fredrik Lundh wrote: > # sort items on descending count > deco = sorted(freq.items(), key=lambda x: -x[1])
Neat. Is there any way to use sorted() with multiple sort keys? ... Given that the spec calls for sorting by _two_ keys: first by frequency (descending), then by name (ascending). To clarify: kevin : 3 jock : 2 andrew : 1 bill : 1 fred : 1 freddy : 1 is correct, while: kevin : 3 jock : 2 bill : 1 andrew : 1 fred : 1 freddy : 1 is incorrect because "andrew 1" must appear before "bill 1". >> Finally, I might replace: >> >> for v, k in deco: >> print "%-10s: %d" % (k, -v) >> >> with: >> >> print "\n".join("%-10s: %d" % (k, -v) for v, k in deco) > > why? No good reason, unless performance is significantly different. The first seems clearer to me. Just wondering what other folks think. Thanks, /-\ Make the switch to the world's best email. Get the new Yahoo!7 Mail now. www.yahoo7.com.au/worldsbestemail -- http://mail.python.org/mailman/listinfo/python-list