a = {}
a = dict()
1. len(a)
시간 복잡도 :O(1)
요소의 개수를 리턴한다.
2. a[key]
시간 복잡도 :O(1)
`키를 조회하여 값을 리턴한다.
3. a[key] = value
시간 복잡도 :O(1)
키/값을 삽입한다.
4. key in a
시간 복잡도 :O(1)
딕셔너리에 키가 존재하는지 확인한다.
ex.
a = {'key1': 'value1', 'key2': 'value2'} try: print(a['key3']) except KeyError: print("존재하지 않는 키") >> 존재하지 않는 키
✔️ 아래와 같이 키와 값을 각각 꺼내올 수 있다.
ex.
a = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} for k, v in a.items(): print(k, v) >> key1 value1 key2 value2 key3 value3
✔️ defaultdict 객체는 존재하지 않는 키를 조회할 경우, 에러 메시지를 출력하는 대신 디폴트 값을 기준으로 해당 키에 대한 딕셔너리 아이템을 생성해준다.
ex.
a = collections.defaultdict(int) b = collections.defaultdict(list) c = collections.defaultdict(str) >> a['foo'], b['foo'], c['foo'] 0 [] ''
✔️ Counter 객체는 아이템에 대한 개수를 계산해 딕셔너리로 리턴한다.
ex.
a = [1, 2, 3, 4, 5, 5, 5, 6, 6] b = collections.Counter(a) >> b Counter({5: 3, 6: 2, 1: 1, 2: 1, 3: 1, 4: 1})
✔️ Counter 객체에서 가장 빈도 수가 높은 요소는 다음과 같이 most_common()을 사용한다.
✔️ 코딩 테스트에서 빈도수가 높은 어떤 것을 구해야할 때, Counter 객체는 Data를 전처리하고 제일 마지막에 most_common과 함께 사용하면 편리하다.
ex.
>> b.most_common(2) [(5, 3), (6, 2)]