Python中的defaultdict函数
生活随笔
收集整理的這篇文章主要介紹了
Python中的defaultdict函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
from collections import defaultdict
defaultdict
用于產生一個帶有默認值的dict。主要針對key不存在的情況下,也希望有返回值的情況。
>>> a = dict() >>> a['k1'] = 1 >>> a {'k1': 1} >>> a['k2'] ------------------------------- Traceback (most recent call last):File "<stdin>", line 1, in <module> KeyError: 'k2' >>>對于普通的dict,key不存在就報錯。
但是對于defaultdict,key不存在就會返回默認值。
那么默認值如何設定?通過給defaultdict()方法傳參,傳入的是一個函數(或叫做方法),當key不存在時,返回的就是這個函數的默認返回值。
''' Python學習交流,免費公開課,免費資料, 免費答疑,系統學習加QQ群:579817333 ''' >>> a = defaultdict(int) >>> a defaultdict(<class 'int'>, {}) >>> a['k2'] 0 >>>此時就不會報錯。而且返回值是0。
我們還發現了,原來int這個內置函數的默認值是0。看這個示例:
>>> print(int()) 0這里的函數可以是任意自定義函數,只要又default的return即可。
>>> from collections import defaultdict >>> def fun(): return 666 ... >>> fun() 666 >>> a = defaultdict(fun) >>> a defaultdict(<function fun at 0x10a8185f0>, {}) >>> a['nonexist_key'] 666 >>>總結
以上是生活随笔為你收集整理的Python中的defaultdict函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python函数中参数前带*是什么意思?
- 下一篇: Python基础教程:默认参数和可变参数