python找出字典中value最大值的几种方法

假设定义一字典,m = {"a":3,"e":6,"b":2,"g":7,"f":7,"c":1,"d":5},在不知道key的情况下如何找出字典中value最大的所有key-value对?下面讨论几种方法。

1)通过m.values()和max()函数

第一步,通过max()函数找到字典中的value最大值。

max(m.values())

结果为7

第二步,再通过value=7遍历字典找出所有value=7的键值对。

for key,value in m.items():
    if(value == max(m.values())):
        print (key,value)

2)通过sort()函数排序所有的value

values = m.values()
values.sort()
print (values[len(values)-1])

结果同样为7,其余步骤通1)中的第二步

3)通过map()函数

keys = m.keys()
keys.sort()
ma=map(m.get,keys)
print(ma[len(ma) - 1])

4)通过sort()函数排序所有的items

# print m.items()
items = m.items()
items.sort(key=lambda x:x[1])
print (items[len(items) - 1])

5)通过max()函数指定key函数

# print m.items()
print (max(m.items(),key=lambda x:x[1]))

6)通过zip()和max()函数

#Python学习交流群:531509025
print (m.keys())
print (m.values())
print (zip(m.values(),m.keys()) )
print (max(zip(m.values(),m.keys())))

7)通过sorted()函数

print (sorted(m.items(), key=lambda x: x[1]))
print (sorted(m.items(),key=lambda x:x[1])[len(sorted(m.items(),key=lambda x:x[1])) - 1])

另外,sorted(m, reverse=True)等价于list(reversed(sorted(reversed(m))))。

posted @   Python探索牛  阅读(378)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示