python 比较字典value的最大值的几种方法

时间:2021-05-23

python中获取字典的key列表和value列表

# -*- coding: utf-8 -*-# 定义一个字典dic = {'剧情': 11, '犯罪': 10, '动作': 8, '爱情': 3, '喜剧': 2, '冒险': 2, '悬疑': 2, '惊悚': 2, '奇幻': 1}#通过list将字典中的keys和values转化为列表keys = list(dic.keys())values = list(dic.values())# 结果输出print("keys列表为:",end='')print(keys)print("values列表为:",end='')print(values)

测试结果:

假设定义一字典,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()函数

print m.keys()print m.values()print zip(m.keys(),m.values())print max(zip(m.keys(),m.values()))

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]

到此这篇关于python 比较字典value的最大值的文章就介绍到这了,更多相关python 字典value最大值内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章