Python中使用匿名函数对列表排序

维基百科上查了一下匿名函数(lambda表达式)的相关资料。在Python中主要用于排序。在此把两个使用的例子记录一下。

1、按名称排序

a = [10, '10', 10.0]
a.sort(lambda x,y: cmp(x.__class__.__name__, y.__class__.__name__))
print a
[10.0, 10, '10']


2、按长度为字符串列表排序

a = ['three', 'two', 'four']
a.sort(lambda x,y: cmp(len(x), len(y)))
print a
['two', 'four', 'three']