SeouliteLab

Python에서 Collection 개수 세는 방법 - Counter 활용하기 본문

프로그래밍

Python에서 Collection 개수 세는 방법 - Counter 활용하기

Seoulite Lab 2024. 3. 2. 12:30

1. 리스트의 항목 개수 세기

Counter를 사용하여 리스트의 각 항목의 개수를 세어볼 수 있습니다. Counter는 collections 모듈에 포함되어 있으며, 각 항목의 개수를 사전 형태로 반환합니다.

from collections import Counter

items = ['apple', 'banana', 'apple', 'orange', 'apple', 'banana']
item_counts = Counter(items)
print(item_counts)

2. 문자열의 문자 개수 세기

Counter를 사용하여 문자열의 각 문자의 개수를 세어볼 수도 있습니다. 문자열은 iterable한 객체이므로 Counter에 넘겨주면 각 문자의 개수를 세어줍니다.

string = "hello"
char_counts = Counter(string)
print(char_counts)

3. 사전의 값 개수 세기

Counter는 사전의 값의 개수를 세는 데에도 유용합니다. 사전의 값들을 Counter에 전달하여 각 값의 개수를 세어볼 수 있습니다.

dictionary = {'a': 3, 'b': 2, 'c': 1, 'd': 3}
value_counts = Counter(dictionary.values())
print(value_counts)

4. Counter의 most_common 메서드

Counter 객체의 most_common 메서드를 사용하면 가장 자주 등장하는 요소들과 그 개수를 반환할 수 있습니다. 인자로 숫자를 전달하면 해당 개수만큼의 요소를 반환합니다.

most_common_items = item_counts.most_common(2)
print(most_common_items)

5. Counter 객체 갱신

Counter 객체는 갱신할 수도 있습니다. 다른 iterable 객체를 update 메서드에 전달하여 Counter 객체를 갱신할 수 있습니다.

new_items = ['apple', 'kiwi', 'apple']
item_counts.update(new_items)
print(item_counts)