与其他语言不同,python 3.0之后,弃用了其他语言中常见的cmp方法,在sort方法中改用key实现。
之前一直疑惑自定义对象的排序如何写comparator,最后发现还是通过内部的__cmp__方法来实现。
挖坑
http://www.cnblogs.com/nju2014/p/5569983.html
对这个sort方法还是有点烦, 当key相等时,如果要对不同的列表排序并期望获得一致的输出结果时,就会出现问题。
如要对A = [a, b, c, d] 和B = [b, a, c ,d] 进行排序,存在这样的排序依据 V = {a:4, b:4, c:1, d:1}。
由于sort方法的稳定性,sort(A)结果为[a,b,c,d], sort(B)结果为[b,a,c,d],就会出现结果顺序不一致的问题。
如何解决?引用外部