[Python]sort与sorted高级技巧

与其他语言不同,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] 进行排序,存在这样的dict V = {a:4, b:4, c:1, d:1}

当调用sorted(A, key=lambda x:V[x], reverse=True)时,返回的结果可能是[a, b , c ,d], 也有可能是[b, a, c, d]

猜你喜欢

转载自www.cnblogs.com/oDoraemon/p/9453862.html