2017-04-18 8 views
2

파이썬 컬렉션 Counter.most_common(n) 메서드는 카운트가있는 상위 n 개 요소를 반환합니다. 그러나 두 요소의 수가 같은 경우 어떻게 알파벳순으로 결과를 반환 할 수 있습니까? 예를 들어알파벳 순서로 같은 수의 요소 정렬 - 파이썬 카운터

는 : 같은 문자열 :

[('A', 3), ('B', 3), ('C', 2)] 

및 NOT : BBBAAACCD은 "2-가장 일반적인"요소에 대해, 나는 결과가되고 싶어

[('B', 3), ('A', 3), ('C', 2)] 

공지 사항이 AB은 동일한 빈도를 갖지만, 알파벳 순으로 B 앞에 오기 때문에 A은 결과 목록에 B 앞에옵니다.

[('A', 3), ('B', 3), ('C', 2)] 

어떻게 구현할 수 있습니까?

+0

http://stackoverflow.com/questions/20950650/how-to-sort-counter-by-value-python –

+1

가능한 중복 된 것 같다 [방법 값으로 카운터를 정렬 하시겠습니까? - python] (http://stackoverflow.com/questions/20950650/how-to-sort-counter-byvalue-python) – justderb

+0

@HarshaW 아니오, 중복이 아닙니다. 방금 달성하려는 목표를 명확히하기 위해 질문을 업데이트했습니다. 검토하고 생각이 있다면 알려주십시오. – stfd1123581321

답변

0
from collections import Counter 
print(sorted(Counter('AAABBBCCD').most_common(3))) 

이 질문의 중복 How to sort Counter by value? - python

+0

이 작동하지 않습니다. 'A'가 가장 흔하지 않은 경우 most_common을 취소하고 알파벳순으로 반환합니다. – AgentBawls