每日一模块-Python字典按key、value排序问题详解

现有字典d={'a':24, 'b':32, "c":12}请分别按字典只中的key、value排序?

sorted(iterable, key, reverse) 三个参数,iterable是可迭代对象,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是正序, 默认reverse=False.

一、按key排序(只是输出的key值的排序列表):

sorted(d.keys(), reverse=True/False)

二、按value排序(只是输出的value值的排序列表):

sorted(d.values(), reverse=True/False)

sorted函数返回值是list,上述两种也可以用于提取key或value的列表

三、 按key:value中的key排序:

sorted(d.items(),key=lambda item:item[0], reverse=True/False) 输出[(key,value), (key,value)]的排序

四、 按key:value中的value排序排序:

sorted(d.items(),key=lambda item:item[1], reverse=True/False) 输出[(key,value), (key,value)]的排序

五、 如果想将sorted的结果还以字典形式输入,直接转化成字典即可,如:

sort_dict = dict(sorted(d.items(),key=lambda item:item[0], reverse=True/False))
上一篇:sort方法和sorted高阶函数


下一篇:【LeetCode】【Two Pointers】squares of a sorted array