해당 포스트의 내용 출처는 Naver boostcourse : 인공지능(AI) 기초 다지기 에 있습니다.
원래는 넘어갈까 했지만 내용을 들어보니 코딩테스트도 준비하는 입장에선 필요한 함수들이 많아서
첫 번째 챕터에선 Python Data Structure과 Pythonic Code 강의 내용을 쫙 정리를 해보고자 한다.
dictionary
- dictionary 의 정보를 알기위해서 items() 메소드를 사용하면 된다.
- 혹은 dic_itmes in 딕셔너리.itmers() 하면 하나씩 튜플쌍이 출력이 된다.
- dict key만 출력하고 싶으면 keys() 메소드를 사용한다.
- value만 출력하고 싶으면 values() 메소드 사용한다.
collections
- List, tuple, dict에 대한 파이썬 빌트인 확장 자료구조
(1) deque
- stack과 queue를 지원하는 모듈
- list 에 비해 효율적인 = 빠른 자료 저장 방식을 지원
- rotate, reverse등 linked list의 특성을 지원
- 기존 list 형태의 함수를 모두 지원
(2) Counter
- 시퀀스 타입의 data element 들의 갯수를 dict 형태로 반환
from collections import Counter
c = Counter(["B", "S", "S", "S", "S", "B", "B"])
print(c)
# Counter({'B':3, 'S':4})
#혹은 Counter 안에 dict 타입을 넣어주게 되면
c = Counter({'red': 4, 'blue':2})
print(list(c.elements()))
# ['blue', 'blue', 'red', 'red', 'red', 'red'] 이런식으로 출력 가능
(3) OrderedDict
- 입력한 순서대로 dict 반환
- python 3.6부턴 입력한 순서를 보장하여 출력하기 때문에 딱히 의미 없음
(4) defaultdict
- Dict type의 값에 기본값을 지정.
- 신규값 생성시 사용하는 방법
from collections import defaultdict
d = defaultdict(object) # default dictionary 를 생성
d = defaultdict(lambda: 0) # default 값을 0으로 설정
print(d["first"])
(5) namedtuple
- tuple 형태로 Data 구조체를 저장하는 방법
'머신러닝 🤖 > 인공지능(AI) 기초 다지기' 카테고리의 다른 글
1. 파이썬 기초 - Pythonic code (1) | 2023.10.18 |
---|