亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python中dict排序的兩種方法

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

dict 內(nèi)部是按照哈希值排序的,所以無法得到一個按照鍵/值升序/降序 的dict。
不過可以得到一個排好序的列表。
比如 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ī)則是否反過來,默認(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(這完全取決于你需要哪個)

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):
	# 這里如果不強制轉(zhuǎn)換會報錯,因為d.keys()的類型是:<class 'dict_keys'>,沒有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)建一個字典
dic={'a':'甘肅酒泉','b':'廣州市','c':'四年'}
print(sorted(dic))

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

指定排序依據(jù),同時返回 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', '甘肅酒泉')]

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

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

相關(guān)文章

  • Python?中?Kwargs?解析的最佳實踐教程

    Python?中?Kwargs?解析的最佳實踐教程

    這篇文章主要介紹了Python中Kwargs解析的最佳實踐,使用?kwargs,我們可以編寫帶有任意數(shù)量關(guān)鍵字參數(shù)的函數(shù),當(dāng)我們想為函數(shù)提供靈活的接口時,這會很有用,需要的朋友可以參考下
    2023-06-06
  • Python實現(xiàn)在tkinter中使用matplotlib繪制圖形的方法示例

    Python實現(xiàn)在tkinter中使用matplotlib繪制圖形的方法示例

    這篇文章主要介紹了Python實現(xiàn)在tkinter中使用matplotlib繪制圖形的方法,結(jié)合實例形式分析了Python使用tkinter與matplotlib進行正弦曲線圖形繪制的相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • python并發(fā)場景鎖的使用方法

    python并發(fā)場景鎖的使用方法

    這篇文章主要介紹了python并發(fā)場景鎖的使用方法,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • python基礎(chǔ)教程之簡單入門說明(變量和控制語言使用方法)

    python基礎(chǔ)教程之簡單入門說明(變量和控制語言使用方法)

    這篇文章主要介紹了開始學(xué)習(xí)python的第一步需要知道的知識(變量和控制語言使用方法),需要的朋友可以參考下
    2014-03-03
  • windows下python 3.9 Numpy scipy和matlabplot的安裝教程詳解

    windows下python 3.9 Numpy scipy和matlabplot的安裝教程詳解

    這篇文章主要介紹了windows下python 3.9 Numpy scipy和matlabplot的安裝教程詳解,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Python子類繼承父類構(gòu)造函數(shù)詳解

    Python子類繼承父類構(gòu)造函數(shù)詳解

    在本文里我們給大家分享一篇關(guān)于Python 子類繼承父類構(gòu)造函數(shù)的相關(guān)知識點內(nèi)容,需要的朋友們跟著學(xué)習(xí)下。
    2019-02-02
  • python辦公自動化之excel的操作

    python辦公自動化之excel的操作

    在我們?nèi)粘9ぷ髦?,?jīng)常會使用&nbsp;Word、Excel、PPT、PDF&nbsp;等辦公軟件但是,經(jīng)常會遇到一些重復(fù)繁瑣的事情,這時候手工操作顯得效率極其低下;通過 Python 實現(xiàn)辦公自動化變的很有必要
    2021-05-05
  • Python實現(xiàn)從PPT中導(dǎo)出高分辨率圖片

    Python實現(xiàn)從PPT中導(dǎo)出高分辨率圖片

    這篇文章主要為大家分享了一個實用腳本——如何利用Python實現(xiàn)從PPT中導(dǎo)出高分辨率(高 dpi)的圖片,文中的示例代碼講解詳細,感興趣的可以了解一下
    2023-05-05
  • openCV中KNN算法的實現(xiàn)

    openCV中KNN算法的實現(xiàn)

    KNN算法是一種簡單且常用的分類算法,本文主要介紹了openCV中KNN算法的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-04-04
  • SpringBoot實現(xiàn)登錄注冊常見問題解決方案

    SpringBoot實現(xiàn)登錄注冊常見問題解決方案

    這篇文章主要介紹了SpringBoot實現(xiàn)登錄注冊常見問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03

最新評論