当前位置:懂科普 >

学习教育

> Python按键或值对字典进行排序

Python按键或值对字典进行排序

<link rel="stylesheet" href="https://js.how234.com/3f0e869d6d/260484806ecf5e3f60c68fd45fc34391a2/260993986ac4/2615a99b7dd2.css" type="text/css" /><link rel="stylesheet" href="https://js.how234.com/3f0e869d6d/260484806ecf5e3f60c68fd45fc34391a2/260993986ac4/2615be9c6ada531262c882c854df.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><style>pre{overflow-x: auto}</style>

给定一个字典,然后按键(key)或值(value)对字典进行排序。

Python按键或值对字典进行排序
def dictionairy():      # 声明字典    key_value ={}         # 初始化    key_value[2] = 56           key_value[1] = 2     key_value[5] = 12     key_value[4] = 24    key_value[6] = 18          key_value[3] = 323     print ("按键(key)排序:")       # sorted(key_value) 返回重新排序的列表    # 字典按键排序    for i in sorted (key_value) :         print ((i, key_value[i]), end =" ") def main():     # 调用函数    dictionairy()              # 主函数if __name__=="__main__":          main()

或者!

def dictionairy():      # 声明字典    key_value ={}         # 初始化    key_value[2] = 56           key_value[1] = 2     key_value[5] = 12     key_value[4] = 24    key_value[6] = 18          key_value[3] = 323     print ("按值(value)排序:")       print(sorted(key_value.items(), key = lambda kv:(kv[1], kv[0])))     def main():     dictionairy()             if __name__=="__main__":           main()

再或者!

lis = [{ "name" : "Taobao", "age" : 100},  { "name" : "Runoob", "age" : 7 }, { "name" : "Google", "age" : 100 }, { "name" : "Wiki" , "age" : 200 }] # 通过 age 升序排序print ("列表通过 age 升序排序: ")print (sorted(lis, key = lambda i: i['age']) )print ("") # 先按 age 排序,再按 name 排序print ("列表通过 age 和 name 排序: ")print (sorted(lis, key = lambda i: (i['age'], i['name'])) )print ("") # 按 age 降序排序print ("列表通过 age 降序排序: ")print (sorted(lis, key = lambda i: i['age'],reverse=True) )

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注好二三四的更多内容!

  • 文章版权属于文章作者所有,转载请注明 https://dongkepu.com/xuexijiaoyu/zex8do.html