亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在python中使用dict()

發布時間:2021-04-01 16:24:30 來源:億速云 閱讀:209 作者:Leah 欄目:開發技術

這篇文章將為大家詳細講解有關如何在python中使用dict(),文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

一、字典的鍵映射多個值

將下面的列表轉換成字典

如何在python中使用dict()

一個字典就是一個鍵對應一個單值得映射,而上面的列表中有相同的鍵,如果你想要一個鍵映射多個值,那么就需要將這多個值放到另外的序列中,比如list或者set里面,像下面這樣:

如何在python中使用dict()

你可以很方便的使用 collections 模塊中的 defaultdict 來構造這樣的字典。

defaultdict 的一個特征是它會自動初始化每個 key 剛開始對應的值。

如何在python中使用dict()

當然這個默認的容器不一定是 list, 也可以是集合 set。 根據自己的需求選擇使用 list 還是 set 。如果你想保持元素的插入順序就應該使用列表,如果想去掉重復元素就是用集合。

二、統計字典中某個值出現的次數

現在有一個列表,列表中有很多字典,需要統計字典中相同的鍵對應的值得和

如何在python中使用dict()

利用defaultdict 設置默認值的方法 defaultdict(int) ,代碼如下:

如何在python中使用dict()

collections 創建有序字典

字典dict是無序的,如果我們想要有序的字典,可以使用 OrderedDict,示例如下:

如何在python中使用dict()

OrderedDict 內部維護著一個根據鍵插入順序排序的雙向鏈表。每次當一個新的元素插入進來的時候,它會被放到鏈表的尾部,對于一個已經存在的鍵的重復賦值不會改變鍵的順序。

需要注意的是,一個 OrderedDict 的大小是一個普通字典的兩倍,因為它內部維護著另外一個鏈表,所以如果你需要構建一個需要大量 OrderedDict 實例的數據結構的時候(比如讀取100,000行CSV數據到一個 OrderedDict 列表中),那么你就得仔細權衡一下是否使用 OrderedDIict 帶來的好處要大過于額外內存消耗的影響。

改變key-value的順序

OrderedDict 是有序的字典,同時也能改變其順序,比如我們想要改變有序的 OrderedDict 對象的key-value 順序,可以使用 move_to_end(key), 還是以上面創建的有序字典為例子

如何在python中使用dict()

可以看到之前排在第一位的 bar 被移到最后一位了,move_to_end還接收一個關鍵字參數 last,last默認為True,當last=False時,表示將該鍵移動到最前面。

刪除key_value

如果我們要刪除有序字典中的 key_value,可以使用 popitem 方法,popitem(last=True)按照先進后出的順序刪除 dict 中的key_value,popitem(last=False) 按照先進先出的順序刪除dict中的 key_value

如何在python中使用dict()

字典排序

利用python 內置函數 sorted 對字典的鍵或者值進行排序,首先來了解下sorted 函數

sorted(iterable, key=None, reverse=False)

參數說明:

  • iterable -- 可迭代對象

  • key -- 主要是用來進行比較的元素,只有一個參數,具體的函數的參數就是取自于可迭代對象中,指定可迭代對象中的一個元素來進行排序。

  • reverse -- 排序規則,reverse = True 降序 , reverse = False 升序(默認)。

按照key進行排序

理解了 sorted 函數就好辦了,代碼如下:

如何在python中使用dict()

按照value進行排序

代碼如下:

如何在python中使用dict()

注意排序后的返回值是一個list,而原字典中的名值對被轉換為了list中的元組。

通過某個關鍵字排序一個字典列表

假設你有一個字典列表,如下:

如何在python中使用dict()

你想根據某個或某幾個字典字段來排序這個列表。

通過使用 operator 模塊的itemgetter函數,可以非常容易地排序這樣的數據結構,代碼如下:

如何在python中使用dict()

itemgetter() 函數也支持多個 keys,比如下面的代碼:

如何在python中使用dict()

關于如何在python中使用dict()就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

麦盖提县| 武山县| 垣曲县| 岳池县| 会同县| 三明市| 肃北| 涪陵区| 齐齐哈尔市| 建瓯市| 定边县| 尚志市| 毕节市| 庆阳市| 辽阳县| 石狮市| 西华县| 茶陵县| 喜德县| 仲巴县| 花莲市| 尼勒克县| 苏尼特左旗| 大城县| 泸西县| 格尔木市| 温泉县| 石河子市| 拜城县| 中方县| 开封县| 翁牛特旗| 南丰县| 报价| 石泉县| 泰安市| 淮安市| 榕江县| 石台县| 射洪县| 安平县|