관리 메뉴

농's 개발 공부 이야기

[파이썬] 코테 준비 본문

old backups/자료구조&알고리즘

[파이썬] 코테 준비

농9 2021. 4. 20. 21:19

1) 정규 표현식

 

2) 람다 표현식

 


딕셔너리 모듈

1) defaultdict : 존재하지 않는 키를 조회할 때, 에러 메시지를 출력하는 것이 아닌 디폴트 값을 기준으로 해당 키에 대한 아이템을 생성한다. 사용시 collections import가 필요하다. 

import collections

ex = collections.defaultdict(int)
ex['apple'] = 1
ex['banana'] = 2

ex
#defalultdict(<class 'int'>, {'apple': 1', 'banana': 2})

#기존에 없는 strawberry의 값 증가시켜보기
ex['strawberry'] += 1

ex
#defalultdict(<class 'int'>, {'apple': 1', 'banana': 2, 'strawberry': 1})

2) orderedDict : 보통 해시 테이블을 이용한 자료형은 입력 순서가 유지되지 않기 때문에, 파이썬에서는 orderedDict 객체를 제공한다. orderedDict는 입력 그대로 순서를 유지하게 해 준다. 파이썬 3.7부터는 딕셔너리가 내부적으로 인덱스를 이용하기 때문에 입력 순서가 유지되지만 하위 버전은 해당하지 않기 때문에 알아두면 하위 버전에서 유용하게 사용 가능하다.

import collections

collections.OrderedDict({'apple': 5, 'banana': 1, 'strawberry': 3})
#OrderedDict([{'apple': 5, 'banana': 1, 'strawberry': 3}])

3) counter: 아이템에 대한 개수를 계산해서 딕셔너리로 리턴한다. 이 때 순서는 많은 아이템부터 정렬된다.

import collections

ex = [1, 1, 2, 3, 4, 4, 4, 5, 6, 6]
cnt = collections.Counter(ex)
print cnt
#Counter({4: 3, 1: 2, 6: 2, 2: 1, 3: 1})

counter 객체의 유용한 메소드는 most_common 이라는 메소든데 가장 빈도 수가 높은 요소를 추출해 주는 역할을 한다.

print cnt.most_common(1)
#[(4,3)]

 

'old backups > 자료구조&알고리즘' 카테고리의 다른 글

[파이썬] 그래프 순회/탐색  (0) 2021.04.20
Comments