[파이썬] collections 모듈, 리스트 요소별 개수 쉽게 구하기
- 프로그래밍/파이썬
- 2020. 6. 18. 22:30
반응형
리스트 ["a","b","a","c","d","e","c","c"]가 있다고 해보자. 각 요소별 갯수를 구해야 할 때, 아래와 같이 딕셔너리에는 키 값이 하나만 존재한다는 특징을 사용해 구할 수 있을 것이다.
dict={}
test=["a","b","a","c","d","e","c","c"]
for v in test:
if dict.get(v): dict[v]+=1
else: dict[v]=1
print(dict)
{'a': 3, 'b': 2, 'c': 4, 'd': 2, 'e': 2}
위와 같은 방식으로도 구할 수는 있지만 collections 모듈의 Count를 사용하면 손쉽게 구할 수 있다.
import collections
dict={}
test=["a","b","a","c","d","e","c","c"]
dict=collections.Counter(test)
print(dict)
Counter({'c': 3, 'a': 2, 'b': 1, 'd': 1, 'e': 1})
또한 Counter로 얻은 딕셔너리끼리는 뺄셈도 가능하다.
import collections
test1=["a","b","a","c","d","e","c","c"]
test2=["a","b","a","c","d","e","c"]
dic1=collections.Counter(test1)
dic2=collections.Counter(test2)
print(dic1-dic2)
Counter({'c': 1})
'프로그래밍 > 파이썬' 카테고리의 다른 글
[파이썬] 문자열 두 글자씩 띄우기 (0) | 2021.08.08 |
---|---|
[파이썬] zip으로 반복문에 리스트 여러개 같이 돌리기 (0) | 2020.06.19 |
[파이썬] pandas, csv 특정 열 값을 리스트로 변경하기 (2) | 2020.06.15 |
[파이썬] pandas로 csv에서 특정 값을 가진 행 찾기 (0) | 2020.06.14 |
[파이썬] 네이버 플레이스, 맛집 (JSON 데이터) 크롤링 (2) (19) | 2020.06.13 |