怎么对字典进行排序,以及怎么对列表嵌套字典进行排序

怎么对字典进行排序,以及怎么对列表嵌套字典进行排序。

以及排序中用到的sorted函数各参数用法

按我的理解:

  1. 一般来说:sorted(a, key=b), sorted函数会用到a, b两个参数
  2. a是一个可迭代对象,诸如list, set, dict等,都可用于此处
  3. b是用于排序的值,比如你传入的是list,那么默认情况下,b就是list里面的一个个值,b的值可以选择
  4. sorted的返回值是一个list

# 字典排序
a = {'a': 3, 'c': 89, 'b': 0, 'd': 34}
# 按照字典的值进行排序
a1 = sorted(a.items(), key=lambda x: x[1])
# 按照字典的键进行排序
a2 = sorted(a.items(), key=lambda x: x[0])
print('按值排序后结果', a1)
print('按键排序后结果', a2)
print('结果转为字典格式', dict(a1))
print('结果转为字典格式', dict(a2))

img

对列表中的字典排序,根据分数从低到高


res=[{"name":"Python","score":90},
     {"name":"Java","score":79},
     {"name":"PHP","score":80}]
     
arry=sorted(res,key=lambda x: x["score"])