我是python的新手,我從某處閱讀了一些代碼片段。這是一個計數排序的實現。defaultdict與默認值1?
的代碼如下:
from collections import defaultdict
def sort_colors(A):
ht = {} # a hash map
ht = defaultdict(lambda:0, ht) # with default value 1
for i in A:
ht[i] += 1
ret = []
for k in [0, 1, 2]:
ret.extend([k]*ht[k])
return ret
正如FUNC的前兩行,這是
ht = {}
ht = defaultdict(lambda:0, ht)
我不是這個initialization.Could你好心幫我身材很清楚出來?還有,我們是不是應該用下面的這兩句代替?當您試圖訪問一個普通dict
與不存在的關鍵
ht = defaultdict(int) # default value 0
爲你從收藏導入,可能也只是使用'Counter'。 – Kevin
默認值爲沒有1,它的0 –
嘗試'HT = defaultdict(拉姆達:1)#默認值1'並刪除前面的'ht = {}'在下一行中改變'ht'的值後就不會做任何事情。 – martineau