##### 现有字典```dict_x = {'a':99,'b':72,'c':34}```,如何根据value值来进行排序。 >1、可以用zip函数将数据转化元组 >2、使用内置函数```sorted```,传递```sorted```函数的```Key```参数 先看第一种: ```python dict_x = {'a': 99, 'b': 72, 'c': 34} # 可以先打印字典的key和value是什么, print(dict_x.keys()) print(dict_x.values()) # 使用zip函数将字典的 key和value转换成对应的元组 a = list(zip(dict_x.values(),dict_x.keys())) print(a) # 使用sorted进行排序,顺序排序 res = sorted(a) print(res) # 倒序排序 res2 = sorted(a,reverse=True) print(res2) ---------------------------------------------------------- 输出: dict_keys(['a', 'b', 'c']) dict_values([99, 72, 34]) [(99, 'a'), (72, 'b'), (34, 'c')] [(34, 'c'), (72, 'b'), (99, 'a')] [(99, 'a'), (72, 'b'), (34, 'c')] ``` 第二种:使用sorted函数的Key参数 ```python dict_x = {'a': 99, 'b': 72, 'c': 34} #字典有一个 item函数 print(dict_x.items()) # 使用sorted函数的Key参数。顺序排序、 x = sorted(dict_x.items(),key=lambda x : x[1]) print(x) ------------------------------------------------- 输出: dict_items([('a', 99), ('b', 72), ('c', 34)]) [('c', 34), ('b', 72), ('a', 99)] ``` 解释一下 ```key```的参数中传递的```lambda```匿名函数 ```lambda x : x[1]```,就是每次迭代 ```dict_x.items()```,把其中每一个项作为`x`传入到```lambda```匿名函数中去,其中每一项有两个元素,这里是对值进行排序,就取每一项的第二个元素作为`sorted`的`key`值来比较,就是`x[1]`。