Python基础 求字典的最大Value值对应的Key值

您所在的位置:网站首页 查找列表中值最大的元素 Python基础 求字典的最大Value值对应的Key值

Python基础 求字典的最大Value值对应的Key值

#Python基础 求字典的最大Value值对应的Key值| 来源: 网络整理| 查看: 265

max(iterable, *[, key, default]) //可传入迭代对象,求其最大值, key 按照指定的函数比较 max(arg1, arg2, *args[, key]) //可传入多个参数取最大值

刚入门python,不时的会投入 C 的思维,先用max(dict.values()) 求出value的最值,再遍历一遍dict ,判断dict[key] 是否等于 value。这一点也不pythonic。

一、max的key自定义 dic = {'a': 3, 'b': 2, 'c': 5, 'd': 8} ans = max(dic, key=lambda x: dic[x]) //ans = max(dic, key=dic.get) 2、利用dic.get方法 print(ans) // ans = 'd'

max 的第一个参数是迭代对象,而 dict 默认迭代Key, 匿名函数冒号后面是返回值,按照返回值的内容进行比较,而最后的max返回的对象是key值。而这也就是 max函数 key 的自定义功能。

二、 如果有多个 Key 都取到了 Value 的最大值,会返回哪个 Key? dic = {'a': 2, 'b': 8, 'c': 5, 'd': 8} ans = max(dic, key=lambda x: dic[x]) print(ans) //ans = 'b'

实践证明返回第一个出现的。

三、 字典按key、value排序 按Key排序: sdic = sorted(dic.item(), key=lambda it: it[0], reverse=True/False) 按Value排序: sdic = sorted(dic.item(), key=lambda it: it[1], reverse=True/False)

参考: 链接1



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3