日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python中defaultdict函数的使用方法

發布時間:2025/3/20 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python中defaultdict函数的使用方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python的字典是否有默認值?

眾所周知,在Python中如果訪問字典中不存在的鍵,會引發KeyError異常(JavaScript中如果對象中不存在某個屬性,則返回undefined)。但是有時候,字典中的每個鍵都存在默認值是非常方便的。例如下面的例子:

strings = ('puppy', 'kitten', 'puppy', 'puppy', 'weasel', 'puppy', 'kitten', 'puppy') counts = {} for kw in strings: counts[kw] += 1

該例子統計strings中某個單詞出現的次數,并在counts字典中作記錄。單詞每出現一次,在counts相對應的鍵所存的值數字加1。但是事實上,運行這段代碼會拋出KeyError異常,出現的時機是每個單詞第一次統計的時候,因為Python的dict中不存在默認值的說法。

為了解決上述問題,我們可以先加個判斷語句,若key不存在,則其value值設為1:

strings = ('puppy', 'kitten', 'puppy', 'puppy','weasel', 'puppy', 'kitten', 'puppy') counts = {}for kw in strings:if kw not in counts:counts[kw] = 1else:counts[kw] += 1

同樣也可以利用setdefault的方法來設置默認值:

''' 學習中遇到問題沒人解答?小編創建了一個Python學習交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' strings = ('puppy', 'kitten', 'puppy', 'puppy','weasel', 'puppy', 'kitten', 'puppy') counts = {}for kw in strings:counts.setdefault(kw, 0)counts[kw] += 1

還有一種方法來對字典進行初始化操作——defaultdict

defaultdict類就好像是一個dict,但是它是使用一個類型來初始化的:

>>> from collections import defaultdict >>> d = defaultdict(list) >>> d['k1'] [] >>> d defaultdict(<class 'list'>, {'k1': []}) >>> d['k2']='kobe' >>> d defaultdict(<class 'list'>, {'k1': [], 'k2': 'kobe'}) >>> d['k3'].append('lebron') >>> d defaultdict(<class 'list'>, {'k1': [], 'k2': 'kobe', 'k3': ['lebron']})

結尾給大家推薦一個非常好的學習教程,希望對你學習Python有幫助!

Python基礎入門教程推薦:更多Python視頻教程-關注B站:Python學習者

【Python教程】全網最容易聽懂的1000集python系統學習教程(答疑在最后四期,滿滿干貨)

Python爬蟲案例教程推薦:更多Python視頻教程-關注B站:Python學習者

2021年Python最新最全100個爬蟲完整案例教程,數據分析,數據可視化,記得收藏哦

總結

以上是生活随笔為你收集整理的Python中defaultdict函数的使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。