python对字典的值排序_Python对字典分别按键(key)和值(value)进行排序

1、对字典按键(key)进行排序

2、对字典按值(value)进行排序

使用sorted函数进行排序

sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数;

其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等

key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=true则是倒序,

reverse=false时则是顺序,默认时reverse=false。

#初始化字典

dict_data={6:9,10:5,3:11,8:2,7:6}

1、对字典按键(key)进行排序

#对字典按键(key)进行排序(默认由小到大)

test_data_0=sorted(dict_data.keys())

#输出结果

print(test_data_0) #[3, 6, 7, 8, 10]

test_data_1=sorted(dict_data.items(),key=lambda x:x[0])

#输出结果

print(test_data_1) #[(3, 11), (6, 9), (7, 6), (8, 2), (10, 5)]

2、对字典按值(value)进行排序

#对字典按值(value)进行排序(默认由小到大)

test_data_2=sorted(dict_data.items(),key=lambda x:x[1])

#输出结果

print(test_data_2) #[('8', 2), ('10', 5), ('7', 6), ('6', 9), ('3', 11)]

test_data_3=sorted(dict_data.items(),key=lambda x:x[1],reverse=True)

#输出结果

print(test_data_3) #[('3', 11), ('6', 9), ('7', 6), ('10', 5), ('8', 2)]

二、方法二

import operator

#初始化字典

dict_data={6:9,10:5,3:11,8:2,7:6}

按键(key)进行排序

test_data_4=sorted(dict_data.items(),key=operator.itemgetter(0))

test_data_5=sorted(dict_data.items(),key=operator.itemgetter(0),reverse=True)

print(test_data_4) #[(3, 11), (6, 9), (7, 6), (8, 2), (10, 5)]

print(test_data_5) #[(10, 5), (8, 2), (7, 6), (6, 9), (3, 11)]

#按值(value)进行排序

test_data_6=sorted(dict_data.items(),key=operator.itemgetter(1))

test_data_7=sorted(dict_data.items(),key=operator.itemgetter(1),reverse=True)

print(test_data_6) #[(8, 2), (10, 5), (7, 6), (6, 9), (3, 11)]

print(test_data_7) #[(3, 11), (6, 9), (7, 6), (10, 5), (8, 2)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值