最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中dict排序的兩種方法

 更新時(shí)間:2024年01月10日 09:34:57   作者:燈籠只能來(lái)教室體驗(yàn)生活  
字典本身是無(wú)序的,所以它每次輸出都是不一樣的,順序都是亂的,那么字典如何排序,本文主要介紹了Python中dict排序的兩種方法,感興趣的可以了解一下

dict 內(nèi)部是按照哈希值排序的,所以無(wú)法得到一個(gè)按照鍵/值升序/降序 的dict。
不過(guò)可以得到一個(gè)排好序的列表。
比如 d = {"a":1 , "b":3, "c":2} 排序后得到 [('a', 1), ('c', 2), ('b', 3)]

按照值排序

d = {"a":1 , "b":3, "c":2}

""" 
	得到排好序的列表
	>>>d.items()  
	>>>dict_items([('a', 1), ('b', 3), ('c', 2)])
	
	reverse是排序規(guī)則是否反過(guò)來(lái),默認(rèn)是升序
	reverse = False 升序
	reverse = True 降序

	>>>d_list
	>>>[('a', 1), ('c', 2), ('b', 3)]  

	
"""
def get_sorted_list(d, reverse=False):
    return sorted(d.items(), key=lambda x:x[1], reverse=reverse)

d_list = get_sorted_list(d)

我們可以獲取排好序后的key和value(這完全取決于你需要哪個(gè))

for key,val in d_list:
    print(key,val)
"""
out:
	a 1
	c 2
	b 3
"""

按照鍵排序

d = {"a":1 , "b":3, "c":2}
def sort_dict_by_keys(d, reverse=True):
	# 這里如果不強(qiáng)制轉(zhuǎn)換會(huì)報(bào)錯(cuò),因?yàn)閐.keys()的類(lèi)型是:<class 'dict_keys'>,沒(méi)有sort方法
    keys = list(d.keys())
    keys.sort(reverse=reverse)
    return [(key,d[key]) for key in keys]

d_sort = sort_dict_by_keys(d)
print(d_sort)
"""
out:
	[('c', 2), ('b', 3), ('a', 1)]
"""

不指定排序依據(jù)

# 創(chuàng)建一個(gè)字典
dic={'a':'甘肅酒泉','b':'廣州市','c':'四年'}
print(sorted(dic))

# 輸出
['a', 'b', 'c']

指定排序依據(jù),同時(shí)返回 key-value

print(sorted(dic.items(),key=lambda s:s[0]))
print(sorted(dic.items(),key=lambda s:s[1]))

# 輸出
[('a', '甘肅酒泉'), ('b', '廣州市'), ('c', '四年')]
[('c', '四年'), ('b', '廣州市'), ('a', '甘肅酒泉')]

字典本身是無(wú)序的數(shù)據(jù)容器,如果要對(duì)字典進(jìn)行排序,需要用到 sorted 這個(gè)函數(shù),不指定排序依據(jù)時(shí),默認(rèn)按照 key 進(jìn)行排序,并返回排序好的列表,指定排序依據(jù)時(shí),需要用字典獲取 key 和 value 的方法將 key 和 value 傳入 sorted 函數(shù),如果指定排序依據(jù)的同時(shí),想要他獲取鍵值對(duì),則需要先獲取字典的 item 傳入,然后指定 key 參數(shù),用 lambda 函數(shù)來(lái)獲取 key,上述排序默認(rèn)都是升序,如果降序排列,則將 reverse 參數(shù)設(shè)定為 True 即可。

 到此這篇關(guān)于Python中dict排序的兩種方法的文章就介紹到這了,更多相關(guān)Python dict排序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

安西县| 原平市| 奉贤区| 临泉县| 乐昌市| 肥城市| 武城县| 铜川市| 邹城市| 三亚市| 丁青县| 青冈县| 阳朔县| 浠水县| 广平县| 洪雅县| 桦南县| 通海县| 墨脱县| 皋兰县| 通河县| 阜新市| 伊吾县| 武鸣县| 紫阳县| 临朐县| 鄂尔多斯市| 黄浦区| 甘洛县| 治多县| 德江县| 香河县| 千阳县| 安义县| 永登县| 久治县| 胶南市| 绥芬河市| 南充市| 崇左市| 昭通市|