首页 > python 字典排序

python 字典排序

import operator  
x = [{ 'id': '259', 'size': '6400','rank':'7'}, { 'id': '260', 'size': '6239','rank':'4'}, { 'id': '261', 'size': '6854','rank':'27'}]
sorted_x = sorted(x, key=operator.itemgetter('rank')) 
print sorted_x 

我有这样一个字典列表,我想根据rank值大小排序,上面代码可以执行,但不能根据rank值大小排序,把rank值改成整型就可以。。


x.sort(key=lambda x:int(x['rank']))


字符串比较大小的方式是挨个字符比较的,比如,'100'小于'6'的值就是true


你上面的例子其实已经进行了排序,只是这个排序是按照字符串的比较规则进行的。字符串的比较是27<4<7的。
通过上面进行转化就能按照整形进行比较了。

【热门文章】
【热门文章】