본문 바로가기
반응형

자료구조9

[Python] 자료구조 - collections 모듈 - namedtuple [namedtuple 모듈] namedtuple은 튜플의 형태로 데이터 구조체를 저장하는 방법입니다. 단순히 값들만 저장하던 튜플과 달리, 각 값들이 무엇인지 설정하여 사용할 수 있습니다. from collections import namedtuple Person = namedtuple('Person', 'math english') P1= Person(name = 'Sally', math = 100, english = 100) P2= Person(name = 'Bob', math = 80, english = 75) for n in [P1, P2]: print('%s의 수학 점수는 %s점, 영어 점수는 %s점입니다.' %n) ''' >>> Sally의 수학 점수는 100점, 영어 점수는 100점입니다. >.. 2023. 11. 10.
[Python] 자료구조 - collections 모듈 - Counter [Counter 모듈] Counter 모듈은 시퀀스 자료형의 데이터 값의 개수를 딕셔너리 형태로 반환하는 자료구조입니다. 만약 a, a, a, b, b, c가 입력된 시퀀스 자료형이 있을 때 Counter 모듈은 a가 3개, b가 2개, c가 1개인 것을 카운트하여 반환합니다. from collections import Counter text = list('banana') print(text) c= Counter((text)) print(c) print(c['a']) ''' ['b', 'a', 'n', 'a', 'n', 'a'] Counter({'a': 3, 'b': 1, 'n': 1}) 3 ''' Counter()에 직접 값의 종류와 각 값의 개수를 입력할 수 있습니다. from collections .. 2023. 11. 10.
[Python] 자료구조 - collections 모듈 - defaultdict [defaultdict] 딕셔너리 구조를 사용할 때에는 키를 먼저 생성한 다음, 생성된 키를 호출할 수 있습니다. 만약 키를 생성하지 않았는데도 키를 호출하려고 하면 에러가 발생합니다. 그러나 defaultdict는 기본 값을 설정할 수 있습니다. 따라서 생성한 적이 없는 키를 호출하게 되면, defaultdict 선언 시에 지정한 기본값이 반환됩니다. from collections import defaultdict d = defaultdict(lambda: 0) print(d['a']) ''' >>> 0 ''' defaultdict에서는 위의 코드처럼 '0'이라는 구체적인 숫자를 지정하지 않고, 특정한 자료형을 기본값으로 설정할 수도 있습니다. 만약 int를 기본값으로 설정하게 되면, 생성한 적 없는 .. 2023. 11. 10.
[Python] 자료구조 - collections 모듈 - OrderecDict [OrderedDict] 이름 그대로 순서를 가진 딕셔너리 객체입니다. 기본적으로 파이썬의 딕셔너리는 순서를 보장하지 않습니다. 그러나 딕셔너리에서 순서를 고정하여 사용할 필요가 있는 경우, OrderedDict를 사용하면 됩니다. OrderedDict는 순서를 보장합니다. from collections import OrderedDict d = OrderedDict() d['math'] = 100 d['english'] = 85 d['science'] = 70 for k, v in d.items(): print(k, v) ''' >>> 'math' 100 >>> 'english' 85 >>> 'science' 70 ''' 딕셔너리 객체를 생성한 다음, 이를 정렬하여 OrderedDict로 다시 입력할 수.. 2023. 11. 10.
반응형