python 使用sorted将字典按照其value大小排序
''' 如下列表 people = [ {“name”:”yoyo”, “age”: 20}, {“name”:”admin”, “age”: 28}, {“name”:”zhangsan”, “age”: 25}, ] 按年龄age从⼩到⼤排序 sorted函数按key值对字典排序 sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。 其中iterable表示可以迭代的对象也就是需要排序的变量,例如可以是 dict.items()、dict.keys()等, key是一个函数,用来选取参与比较的元素, reverse则是用来指定排序是倒序还是顺 序,reverse=true则是倒序,reverse=false时则是顺序,默认时reverse=false。 使用sorted将字典按照其value大小排序 sorted(iterable, key=lambda x: x['value'], reverse=True) ''' people = [ {"name":"yoyo", "age": 20}, {"name":"admin", "age": 28}, {"name":"zhangsan", "age": 25}, ] print(sorted(people, key=lambda x: x['age'], reverse=True))
'''
d = {"name":"zs", "age":18,"city":"深圳", "tel":"1362626627"} 字典根据键从⼩到⼤排序
'''
def test():
d = {"name":"zs", "age":18,"city":"深圳", "tel":"1362626627"}
# print(d.items()) # dict_items([('name', 'zs'), ('age', 18), ('city', '深圳'), ('tel', '1362626627')])
# 将字典中的数据进行排序
dict2 = sorted(d.items(),key=lambda d:d[0],reverse=False) # [('age', 18), ('city', '深圳'), ('name', 'zs'), ('tel', '1362626627')]
# 排序之后的数据类型会变成列表类型 ,这里将数据重新转换成字典
new_dict = {}
for i in dict2:
new_dict[i[0]] = i[1]
return new_dict
print(test())
世界上最美的风景,是自己努力的模样