python實作一鍵多值字典的方法實現

不言
發布: 2018-10-11 14:20:53
轉載
4607 人瀏覽過

這篇文章帶給大家的內容是關於python實現一鍵多值字典的方法實現,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

1、需求

我們想要一個能將鍵(key)對應到多個值的字(即所謂的一鍵多值字典)

#2、解決方案

字典是一種關聯容器,每個鍵都對應到一個單獨的值。如果想要讓鍵對應到多個值,則需要將這些多個值儲存到另一個容器(清單或集合)。

可以這樣建立字典:

d={
‘a’:[1,2,3],
'b':[4,5]
}
登入後複製

或這樣建立:

d={
'a':{1,2,3},
'b':{4,5}
}
登入後複製

要使用清單還是集合完全取決應用的意圖。如果希望保留元素插入的順序,就用列表,如果希望消除重複元素(並且不在乎他們的排序),就用集合。

為了能方便的創建這樣的字典,可以利用collections模組中的defaultdict類別。 defaultdict的一個特點是它會自動初始化第一個值,這樣只需專注於添加元素即可:

from collections import defaultdict
d=defaultdict(list)
d['a'].append(1)
d['a'].append(2)
d['b'].append(4)
print(d)
d=defaultdict(set)
d['a'].add(1)
d['a'].add(2)
d['b'].add(4)
print(d)
登入後複製

結果:

defaultdict(<class &#39;list&#39;>, {'a': [1, 2], 'b': [4]})
defaultdict(<class &#39;set&#39;>, {'a': {1, 2}, 'b': {4}})
登入後複製

以上是python實作一鍵多值字典的方法實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板