반응형
defaultdict
dict의 서브 클래스이다.
기본값을 설정할 수 있도록 도와주는 함수이다. 여러가지의 기본값을 설정할 수 있도록 한다.
from collections import defaultdict
d = defaultdict(int)
print(d) # d(<class 'int'>, {})
d = defaultdict(dict)
print(d) # d(<class 'dict'>, {})
d = defaultdict(list)
print(d) # d(<class 'list'>, {})
- int #기본값 = 0
- dict #기본값 = 비어있는 dict {}
- list #기본값 = 비어있는 list []
사용법
name = [('강', '동원'), ('정','우성'), ('송','강호')]
dic = defaultdict(list)
for lastname, firstname in name:
dic[lastname].append(firstname)
print(dic)

이처럼 딕셔너리를 사용하면서도, 딕셔너리의 특성 자체를 리스트로 바꿔버린다.
그래서 리스트가 사용하는 연산자를 그대로 사용할 수 있다. 특히 append 같은 연산자를 사용하고 싶을 때 유용하다.
int를 하면 value 값을 0으로 초기화하여 value 값을 연산할 수 있도록 한다.
반응형
'코딩테스트 대비 > Python 문법' 카테고리의 다른 글
| [Python] Counter (0) | 2023.09.26 |
|---|---|
| [Python] zip, enumerate (0) | 2023.07.24 |
| [Python] enumerate 사용법 (0) | 2023.07.08 |
| [Python] 각 자릿수 분리하는 방법 (0) | 2023.06.25 |
| [Python] 람다 표현식 사용하기 (0) | 2023.06.23 |