一、基本排序(sort)
d = {'apple': 10, 'banana': 5, 'orange': 20} sorted_dict = sorted(d.items(), key=lambda x: x[1]) print(sorted_dict)
在Python中,我們可以使用sort函數對字典的值進行排序。思路是將字典轉化為元組,然後根據元組的第二個元素進行排序。上述代碼中,我們通過sorted()函數對字典d進行排序,並將結果保存在sorted_dict中,最後打印結果。
可以看出,使用這種方法可以將鍵值對按照值從小到大排序。
二、倒序排序(reverse)
d = {'apple': 10, 'banana': 5, 'orange': 20} sorted_dict = sorted(d.items(), key=lambda x: x[1], reverse=True) print(sorted_dict)
如果我們需要按照值從大到小排序,只需在sorted()函數中添加reverse=True,示例代碼如上。
三、指定排序方式(sorted)
d = {'apple': 10, 'banana': 5, 'orange': 20} sorted_dict = sorted(d.items(), key=lambda x: x[0]) print(sorted_dict) sorted_dict = sorted(d.items(), key=lambda x: x[0], reverse=True) print(sorted_dict)
sorted()函數的key參數也可以指定為其他想要排序的鍵,比如我們可以按照鍵名進行排序。代碼如上。
再加上reverse參數,即可按照鍵名從大到小排序。
四、根據值排序並返回鍵名列表(sorted)
d = {'apple': 10, 'banana': 5, 'orange': 20} sorted_keys = sorted(d, key=d.get) print(sorted_keys)
如果我們只需要對字典的值進行排序並返回鍵名列表,可以通過sorted()函數的key參數傳遞一個函數,這個函數使用元素的值作為排序依據。代碼如上。
可以看出,使用這種方法可以將鍵名按照值從小到大排序並返回。
五、根據值刪除字典元素(popitem)
d = {'apple': 10, 'banana': 5, 'orange': 20} min_value = min(d.values()) while True: key, value = d.popitem() if value == min_value: break print(key, value, d)
如果我們需要在字典中刪除某個值最小的元素,可以通過min()函數找到最小值,然後通過popitem()函數依次刪除元素。代碼如上。
可以看出,使用這種方法可以刪除字典中值最小的元素。
六、根據值獲取鍵列表
d = {'apple': 10, 'banana': 5, 'orange': 20} value = 10 keys = [k for k, v in d.items() if v == value] print(keys)
使用列表推導式可以根據值獲取鍵列表。示例代碼如上。
只需將字典中元素通過items()函數遍歷,然後通過if語句篩選出值等於目標值的鍵名即可。
七、根據值獲取鍵值對列表
d = {'apple': 10, 'banana': 5, 'orange': 20} value = 10 items = [(k, v) for k, v in d.items() if v == value] print(items)
類似於上一種方法,我們也可以通過列表推導式根據值獲取鍵值對列表。示例代碼如上。
只需將字典中元素通過items()函數遍歷,然後通過if語句篩選出值等於目標值的鍵值對即可。
原創文章,作者:TVTDR,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/361627.html