您好,登錄后才能下訂單哦!
這篇文章主要介紹python中defaultdict字典功能特性是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
defaultdict是普通字典dict的一個子類。通過collections庫的defaultdict()方法創建。
defaultdict()需要傳入的參數為 類名。(type類型)
首先,以int類 作為參數傳入為例,
from collections import defaultdict dedict = defaultdict(int) print(dedict)
不同于普通的字典,其特性在于,當用一個defaultdict中不存在的鍵來調用時,不會報KeyError錯誤
以調取’a’鍵的值為例:
print(dedict['a'])
此鍵的值默認為零。這是defaultdict()參數為int的情況,參數不同,默認值也不同。
defaultdict()需要傳入的參數為 類名。(type類型)
傳入其他類,來創建defaultdict(),效果如下:
from collections import defaultdict dedict1 = defaultdict(list) dedict2 = defaultdict(set) dedict3 = defaultdict(dict) dedict4 = defaultdict(tuple) dedict5 = defaultdict(int) dedict6 = defaultdict(float) dedict7 = defaultdict(str) # 創建一個什么用都沒有的類 class A(object): pass # 傳入可用! dedict8 = defaultdict(A) print(dedict1['a']) print(dedict2['a']) print(dedict3['a']) print(dedict4['a']) print(dedict5['a']) print(dedict6['a']) print(dedict7['a']) print(dedict8['a'])
程序運行結果如下。
可以看出,不存在的鍵的默認值為 傳入 類 的 默認實例對象。
默認值的布爾值通常為False,但也不一定。
是否為False跟類有關,如此處的通過A類的布爾值就為True。
甚至,還可以套娃:
dedict9 = defaultdict(defaultdict) print(dedict9['a'])
defaultdict常用于統計多個目標數據的個數,并存儲在defaultdict字典中。
示例如下:
from collections import defaultdict bag = ["cheese", "Bread", "apple", "Bread", "orange", "cheese", 'apple',"milk", "apple", "bananas", "milk"] count = defaultdict(int) for item in bag: count[item] += 1 print(count)
以上是“python中defaultdict字典功能特性是什么”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。