1. 程式人生 > >[Python]sort與sorted高級技巧

[Python]sort與sorted高級技巧

不同 rev logs 相等 nbsp ict 排序 .cn 也有

與其他語言不同,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]

[Python]sort與sorted高級技巧