딕셔너리를 활용하여 값들만 뽑는 values() 함수 사용 문제

HEE·2025년 4월 20일
0
post-thumbnail

1. 프로그래머스 python 코딩테스트 입문

Level 0. 문자열 묶기
프로그래머스 문자열 묶기 문제

정답 확인

  1. 스텝 바이 스텝
from collections import Counter
def solution(strArr):
    a = [ len(i) for i in strArr]
    b = Counter(a)
    return max(b.values())
  1. 짧게 한줄 쓰기
from collections import Counter
def solution(strArr):
    return max(Counter(len(s) for s in strArr).values())
  • Counter() 은 내부적으로 딕셔너리처럼 생김.
  • from collections import Counter 반드시 소환해줘야함.
from collections import Counter

c = Counter([1, 2, 2, 3, 3, 3])
print(c)  
# Counter({3: 3, 2: 2, 1: 1})

print(c.values())
# dict_values([1, 2, 3])
  • 따라서 Counter 객체도 .values() 사용 가능.

오답 이유.

  1. Counter() 함수만 사용할 줄 알고, values()함수에 대해 잘 몰랐음.

핵심 노트

1. .values() 함수 정리

  • 딕셔너리 자료형에 기본적으로 붙어있는 매서드(함수)임.
  • 딕셔너리 안의 값들만 쫙 뽑아서 보여주는 함수.

    참고, 딕셔너리 객체 + . + 함수() 의 형태로 써야함:
    2. 딕셔너리 객체.keys() : 딕셔너리의 키들을 모아서 보여줌.
    3. 딕셔너리 객체.values() : 딕셔너리의 값들을 모아서 보여줌.
    4. 딕셔너리 객체.items() : (키,값)쌍을 튜플 형태로 보여줌.
profile
ALL IS WELL

0개의 댓글