素材牛VIP会员
python 字典排序
 何***孽  分类:Python  人气:992  回帖:3  发布于6年前 收藏
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值改成整型就可以。。

 标签:字典排序python

讨论这个帖子(3)垃圾回帖将一律封号处理……

Lv4 码徒
ki***xx JS工程师 6年前#1

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

Lv3 码奴
lo***68 交互设计师 6年前#2

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

Lv2 入门
阿***逗 移动开发工程师 6年前#3

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

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取