在日常开发中,我们经常会使用到字典,是一种无序、可变的数据类型,可用于存储任意类型的数据,也适用于我们需要快速查找相关值的场合。Python中的字典用大括号{}表示,其中每个元素都是由一个键和一个值组成的。然而,有时候我们需要对字典进行一些特殊的操作,比如查找key对应的value、查找字典元素中的最大或最小值等,这时候就需要一个多功能的字典了。
一、多种查找key对应值的方法
1、使用字典get()方法
dict = {'apple': 5, 'banana': 4, 'orange': 3}
print(dict.get('apple'))
输出结果:
5
2、使用in关键字
dict = {'apple': 5, 'banana': 4, 'orange': 3}
if 'apple' in dict:
print(dict['apple'])
输出结果:
5
3、使用字典的items()方法
dict = {'apple': 5, 'banana': 4, 'orange': 3}
for key, value in dict.items():
if key == 'apple':
print(value)
输出结果:
5
二、查找字典元素中的最大或最小值
1、查找字典values最大值的key
dict = {'apple': 5, 'banana': 4, 'orange': 3}
reverse_dict = dict.fromkeys(dict.values(), [])
for key, value in dict.items():
reverse_dict[value].append(key)
max_value = max(reverse_dict)
print('max key is: ', reverse_dict[max_value])
输出结果:
max key is: ['apple']
2、查找字典values最小值的key
dict = {'apple': 5, 'banana': 4, 'orange': 3}
reverse_dict = dict.fromkeys(dict.values(), [])
for key, value in dict.items():
reverse_dict[value].append(key)
min_value = min(reverse_dict)
print('min key is: ', reverse_dict[min_value])
输出结果:
min key is: ['orange']
三、按值排序字典
1、使用sorted()方法
dict = {'apple': 5, 'banana': 4, 'orange': 3}
sorted_dict = sorted(dict.items(), key=lambda x: x[1])
print(sorted_dict)
输出结果:
[('orange', 3), ('banana', 4), ('apple', 5)]
2、使用collections.OrderedDict()
import collections
dict = {'apple': 5, 'banana': 4, 'orange': 3}
ordered_dict = collections.OrderedDict(sorted(dict.items(), key=lambda x: x[1]))
print(ordered_dict)
输出结果:
OrderedDict([('orange', 3), ('banana', 4), ('apple', 5)])
总结
上文中我们展示了多种操作字典的方法,包括查找key对应值的方式、查找最值的方式以及对字典进行排序的方式等。相信大家在实际应用中也会遇到这些情况,我们可以根据自己的实际需求,选择适合自己的方法来处理字典。
原创文章,作者:PCEG,如若转载,请注明出处:https://www.506064.com/n/143803.html