亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python中defaultdict的用法詳解

 更新時間:2017年06月07日 09:44:29   作者:天堂十八樓  
這篇文章主要為大家詳細介紹了python中defaultdict的用法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

初識defaultdict

之前在使用字典的時候, 用的比較隨意, 只是簡單的使用dict.
然而這樣在使用不存在的key的時候發(fā)生KeyError這樣的一個報錯, 這時候就該defaultdict登場了.

如何使用defaultdict

可以這樣

from collections import defaultdict
d1 = defaultdict(int)

或者這樣

import collections
d1 = collections.defaultdict(int)

defaultdict與dict實例化字典類型的區(qū)別

使用defaultdict任何未定義的key都會默認返回一個根據method_factory參數(shù)不同的默認值, 而相同情況下dict()會返回KeyError.
比較下面代碼:

d1 = dict()
d2 = defaultdict(list)
print(d1['a'])
print(d2['a'])

defaultdict的構造

python官方文檔中對defaultdict的定義如下:

class collections.defaultdict([default_factory[, ...]])

python官方文檔中對defaultdict的解釋如下:

defaultdic
dict subclass that calls a factory function to supply missing values

default_factory 接收一個工廠函數(shù)作為參數(shù), 例如int str list set等.
defaultdict在dict的基礎上添加了一個missing(key)方法, 在調用一個不存的key的時候, defaultdict會調用__missing__, 返回一個根據default_factory參數(shù)的默認值, 所以不會返回Keyerror.

Example

Example 1

s = 'mississippi'
d = defaultdict(int)
for k in s:
  d[k] += 1
print(d)

Example 2

s = [('red', 1), ('blue', 2), ('red', 3), ('blue', 4), ('red', 1), ('blue', 4)]
d = defaultdict(set)
for k, v in s:
  d[k].add(v)

print(d)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Python編程中運用閉包時所需要注意的一些地方

    Python編程中運用閉包時所需要注意的一些地方

    這篇文章主要介紹了Python編程中運用閉包時所需要注意的一些地方,文章來自國內知名的Python開發(fā)者felinx的博客,需要的朋友可以參考下
    2015-05-05
  • pytest配置文件pytest.ini的詳細使用

    pytest配置文件pytest.ini的詳細使用

    這篇文章主要介紹了pytest配置文件pytest.ini的詳細使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Python 實現(xiàn)引用其他.py文件中的類和類的方法

    Python 實現(xiàn)引用其他.py文件中的類和類的方法

    下面小編就為大家分享一篇Python 實現(xiàn)引用其他.py文件中的類和類的方法,具有的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python中HTTP請求的全面指南

    Python中HTTP請求的全面指南

    在現(xiàn)代網絡應用中,HTTP(HyperText Transfer Protocol)協(xié)議是客戶端與服務器之間數(shù)據傳輸?shù)暮诵?本文都將從基礎到高級,逐步引導你成為HTTP請求處理的高手,快跟隨小編一起學習起來吧
    2024-10-10
  • pandas讀取csv格式數(shù)據時header參數(shù)設置方法

    pandas讀取csv格式數(shù)據時header參數(shù)設置方法

    本文主要介紹了pandas讀取csv格式數(shù)據時header參數(shù)設置方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 關于python3的ThreadPoolExecutor線程池大小設置

    關于python3的ThreadPoolExecutor線程池大小設置

    這篇文章主要介紹了關于python3的ThreadPoolExecutor線程池大小設置,線程池的理想大小取決于被提交任務的類型以及所部署系統(tǒng)的特性,需要的朋友可以參考下
    2023-04-04
  • anaconda創(chuàng)建、查看、激活與刪除虛擬環(huán)境指令總結

    anaconda創(chuàng)建、查看、激活與刪除虛擬環(huán)境指令總結

    在跑項目時常常會安裝很多的包,也通常會遇到需要安裝指定版本的包,以及包與包不兼容的問題,下面這篇文章主要給大家介紹了關于anaconda創(chuàng)建、查看、激活與刪除虛擬環(huán)境指令的相關資料,需要的朋友可以參考下
    2022-11-11
  • Django 允許局域網中的機器訪問你的主機操作

    Django 允許局域網中的機器訪問你的主機操作

    這篇文章主要介紹了Django 允許局域網中的機器訪問你的主機實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python中eval帶來的潛在風險代碼分析

    Python中eval帶來的潛在風險代碼分析

    這篇文章主要介紹了Python中eval帶來的潛在風險代碼分析,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Python學習之time模塊的基本使用

    Python學習之time模塊的基本使用

    這篇文章主要給大家介紹了關于Python學習之time模塊基本使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01

最新評論