按值对字典进行排序
Sorting the dictionary by values
sort_orders = sorted(orders.items(), key=lambda x: x[1], reverse=True)
谁能解释一下 key=lambda x: x[1]
如何按值对字典进行排序?
dict.items()
returns 项目视图对象。
它是这样的:
dict_items([('key_1', 'val_1'), ('key_2', 'val_2'), ('key_3', 'val_3')])
因此,如果您将此对象传递给 sorted 并将键参数作为 lambda x: x[1]
放入,它将根据 itemview 内每个元组的第一个索引对 itemview 对象进行排序。它将进一步将该顺序设置为降序,因为反向参数设置为 True
如果我试图通过一个例子来解释这个,请考虑这个:
orders={'order_1':'Pizza','order_2':'Chicken','order_3':'Lasagne'}
sort_orders = sorted(orders.items(), key=lambda x: x[1], reverse=True)
print(sort_orders) #1
print(orders.items()) #2
#1 打印给您:
[('order_1', 'Pizza'), ('order_3', 'Lasagne'), ('order_2', 'Chicken')]
#2 打印为您提供:
dict_items([('order_2', 'Chicken'), ('order_1', 'Pizza'), ('order_3', 'Lasagne')])
访问 this python 有关排序的文档以获取与排序相关的更多信息
希望对您有所帮助!
sort_orders = sorted(orders.items(), key=lambda x: x[1], reverse=True)
谁能解释一下 key=lambda x: x[1]
如何按值对字典进行排序?
dict.items()
returns 项目视图对象。
它是这样的:
dict_items([('key_1', 'val_1'), ('key_2', 'val_2'), ('key_3', 'val_3')])
因此,如果您将此对象传递给 sorted 并将键参数作为 lambda x: x[1]
放入,它将根据 itemview 内每个元组的第一个索引对 itemview 对象进行排序。它将进一步将该顺序设置为降序,因为反向参数设置为 True
如果我试图通过一个例子来解释这个,请考虑这个:
orders={'order_1':'Pizza','order_2':'Chicken','order_3':'Lasagne'}
sort_orders = sorted(orders.items(), key=lambda x: x[1], reverse=True)
print(sort_orders) #1
print(orders.items()) #2
#1 打印给您:
[('order_1', 'Pizza'), ('order_3', 'Lasagne'), ('order_2', 'Chicken')]
#2 打印为您提供:
dict_items([('order_2', 'Chicken'), ('order_1', 'Pizza'), ('order_3', 'Lasagne')])
访问 this python 有关排序的文档以获取与排序相关的更多信息
希望对您有所帮助!