Python說文解字 defaultdict

2022-09-18 10:15:42 字數 1235 閱讀 2269

1. 這個建構函式需要乙個函式作為引數,每當訪問乙個字典中不存在的鍵時,將會不帶引數的呼叫這個函式,並將結果設定為預設值。

2. 眾所週期,如果訪問字典中不存在的鍵時,會引發keyerror異常。

其實這個方法主要是用來統計計數的

# 語法格式:

# collections.defaultdict([default_factory[, …]])

from

collections import defaultdict

s=[('

yellow

',1),('

blue

', 2), ('

yellow

', 3), ('

blue

', 4), ('

red', 1

)]d=defaultdict(list)

print(d)

for k, v in

s: print(k,v)

a=sorted(d.items())

print(a)

# defaultdict(

'list

'>, {})

# yellow

1# blue

2# yellow

3# blue

4# red

1# [(

'blue

', [2, 4]), ('

red', [1]), ('

yellow

', [1, 3

])]#

# 這種方法比使用dict.setdefault()更為便捷,dict.setdefault()也可以實現相同的功能。

from

collections import defaultdict

s = '

mississippi

'd = defaultdict(int

)for k in

s: d[k] += 1

print('\n

',d)

a=sorted(d.items())

print('\n

',a)

# defaultdict(

class

'int

'>, )

# [('i

', 4), ('

m', 1), ('

p', 2), ('

s', 4)]

Python說文解字 main

1.main函式 我們知道很多的程式語言都要寫乙個main函式,比如在c 中main函式還需要大寫。很多人疑惑為什麼要寫這麼乙個main函式。其實這就是好比我們在建了一排房子,你從哪個門都可以進入,這就是不寫main函式的時候。在python中如果我們不寫main函式 定義乙個檔案house1.py...

Python說文解字 雜談08

1.python變數到底是什麼?python和j a中的變數本質不一樣,python的變數實質是乙個指標 int str,便利貼 a 1 1.a貼在1上面 2.它的過程是先生成物件,然後貼便利貼。3.is 是指的標籤貼是否一樣。a 1 b 1 這個是一樣,用的是小整數的內部inter機制的內部優化。...

Python說文解字 雜談07

1.深入dict from a 2.常用方法 a bobby2 clear a.clear copy,返回淺拷貝 new dict a.copy new dict bobby1 company imooc3 深拷貝 import copy new dict copy.deepcopy a new d...