python__[딕셔너리]

Jaewon Lee·2021년 6월 1일
0

Algorithm

목록 보기
13/36
post-thumbnail

On.


Python


1) 딕셔너리 선언

a = {}
a = dict()

2) 딕셔너리 주요 연산

1. len(a)
시간 복잡도 : O(1)
요소의 개수를 리턴한다.

2. a[key]
시간 복잡도 : O(1)
`키를 조회하여 값을 리턴한다.

3. a[key] = value
시간 복잡도 : O(1)
키/값을 삽입한다.

4. key in a
시간 복잡도 : O(1)
딕셔너리에 키가 존재하는지 확인한다.

3) 딕셔너리에서 존재하지 않는 키를 조회하면 KeyError가 발생하는데, 이는 try 구문으로 예외 처리를 할 수 있다.

ex.

a = {'key1': 'value1', 'key2': 'value2'}
try:
    print(a['key3'])
except KeyError:
    print("존재하지 않는 키")

>> 
존재하지 않는 키

4) items()

✔️ 아래와 같이 키와 값을 각각 꺼내올 수 있다.

ex.

a = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
for k, v in a.items():
    print(k, v)

>>
key1 value1
key2 value2
key3 value3

5) defaultdict 객체

✔️ defaultdict 객체는 존재하지 않는 키를 조회할 경우, 에러 메시지를 출력하는 대신 디폴트 값을 기준으로 해당 키에 대한 딕셔너리 아이템을 생성해준다.

ex.

a = collections.defaultdict(int)
b = collections.defaultdict(list)
c = collections.defaultdict(str)

>> a['foo'], b['foo'], c['foo']
0 [] ''

6) Counter 객체

✔️ 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)]


Off.


프로그래머스 랭킹 100위 진입 가즈아!!!🔥🔥🔥

profile
Communication : any

0개의 댓글