파이썬에서 리스트(list) 원소의 개수를 세는 방법 - Counter

파이썬의 collections 모듈에서 제공하는 Counter 객체를 이용해서 리스트(list) 원소의 개수를 셀 수 있습니다. 예를 들어 아래와 같은 리스트가 있다고 생각해 보겠습니다.

x = ['apple', 'banana', 'orange', 'apple']

x에 할당된 리스트에는 'apple'이 2개, 'banana'와 'orange'가 각 1개씩 있겠죠. 이렇게 짧은 리스트면 상관이 없는데 매우 긴 리스트라면 Counter를 이용하면 편리하게 원소별 개수를 알 수 있습니다. 원소가 키(key), 개수가 값(value)인 딕셔너리(dict)처럼 사용하게 됩니다.

from collections import Counter

c = Counter(x)
for key in c:
  print(key, '-', c[key])

apple - 2
banana - 1
orange - 1

여기에 다른 리스트를 추가해서 개수를 갱신할 수도 있습니다. 아래와 같이 update() 함수를 사용합니다.

y = ['orange', 'apple', 'lemon']

c.update(y)
for key in c:
  print(key, '-', c[key])

apple - 3
banana - 1
orange - 2
lemon - 1


@joviansummer의 스팀 프로젝트

스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)

jswit 증인 노드 프로젝트를 시작합니다.

jsup 업보팅(upvoting) 서비스 소개

jsup 수혜자 지정 기능 추가

jsup 서비스에 큐레이션 보상 분배 기능이 추가되었습니다.

jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기

STEEM.NFT - 디지털 아트 보존 프로젝트

Posted through the AVLE Dapp (https://avle.io)

Sort:  

Hello friend!
I'm @steem.history, who is steem witness.
Thank you for witnessvoting for me.
image.png
please click it!
image.png
(Go to https://steemit.com/~witnesses and type fbslo at the bottom of the page)

Upvoted! Thank you for supporting witness @jswit.

Coin Marketplace

STEEM 0.13
TRX 0.35
JST 0.034
BTC 115003.02
ETH 4514.60
SBD 0.86