본문 바로가기
카테고리 없음

[Python] dictionary의 max value를 가진 여러 개의 key 찾기

by whereisco 2023. 2. 22.

개요

코딩테스트 문제를 풀며 최대값을 가지는 key 값들을 구해주어야 하는 문제가 있었습니다.
이를 해결한 방식에 대해 작성해두고 기억해두기 위해 글을 작성해보려고 합니다.

딕셔너리

  • key와 value가 쌍을 이루는 사전 형태의 자료형입니다.
  • key값은 중복되지 않습니다.
  • key를 중복으로 추가하는 경우, 마지막으로 추가한 key - value 쌍이 남게 됩니다.
  • key에는 immutable(변경 불가) 자료형만 올 수 있습니다.

최대 value에 대한 key 찾기

max(dic_ex, key=dic_ex.get) #dictionary.get 이용
[k for k,v in dic_ex.items() if max(dic_ex.values() == v)] #리스트 컴프리헨션 이용
  • max() 함수는 인수에 넣어준 딕셔너리 값 중 최대값을 찾아주는 함수입니다.
  • 리스트 컴프리헨션을 통해 최대 value에 대한 key값을 찾아주는 로직을 위와 같이 볼 수 있습니다.
  • dic_ex.items()를 통해, k,v 변수에 각각 key와 value 값이 할당될 것 입니다.
  • 할당된 v 즉, value 값이 dic_ex 최대값과 같은 경우 k (key)를 리스트에 담아주는 것을 볼 수 있습니다.

나가면서

오늘은 딕셔너리의 최대값에 대한 key값을 찾아주는 예제를 알아 보았습니다.

참고자료

[Python] dictionary max value에 대한 key 찾기