在日常開發中,我們經常會使用到字典,是一種無序、可變的數據類型,可用於存儲任意類型的數據,也適用於我們需要快速查找相關值的場合。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/zh-hk/n/143803.html