python 에서 defaultdict 의 용법 에 대한 상세 한 설명

1799 단어 pythondefaultdict
기본 값
이전 에는 사전 을 사용 할 때 편 하 게 사용 하 였 으 며,dict 만 간단하게 사용 하 였 습 니 다.
그러나 이렇게 존재 하지 않 는 key 를 사용 할 때 KeyError 와 같은 오류 가 발생 하면 defaultdict 가 등장 합 니 다.
defaultdict 를 어떻게 사용 합 니까?
이렇게

from collections import defaultdict
d1 = defaultdict(int)

혹은 이렇게

import collections
d1 = collections.defaultdict(int)

defaultdict 와 dict 실례 화 사전 형식의 차이
defaultdict 를 사용 하면 정의 되 지 않 은 key 를 기본 값 으로 method 에 따라 되 돌려 줍 니 다.factory 매개 변 수 는 기본 값 이 다 르 며,같은 경우 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 는 int str list set 등 공장 함 수 를 매개 변수 로 받 습 니 다.
defaultdict 는 dict 를 바탕 으로 missing(key)방법 을 추 가 했 습 니 다.존재 하지 않 는 key 를 호출 할 때 defaultdict 는 를 호출 합 니 다.missing__, default 에 따 른factory 매개 변수의 기본 값 이기 때문에 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)

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기