본문 바로가기
컴퓨터관련 쪽지

[python] max() 를 이용해 dictionary 에서 value 의 최대값을 가지는 key 를 뽑아보자

by 프들이 2021. 4. 1.
반응형

일단 코드를 보자

data = {
   "key1": {"subkey1": {"value1": "100", "value2": 20}},
   "key2": {"subkey1": {"value1": "20", "value2": 10}},
}

## value1 의 값중 최대값은 문자열이므로 "20" 이고 반환은 "key2" 를 한다.
max_key1 = max(data, key=(lambda x: data[x]['subkey1']["value1"])) 

## value2 의 값 중 최대값은 자연수 20이고 반환은 key1을 한다.
max_key2 = max(data, key=(lambda x: data[x]['subkey1']['value2']))

위 코드에서 max() 함수에 data 라는 이름의 사전을 넣어준다. 이때 크기 비교 항을 lambda 함수를 이용해서 지정해 주면 원하는 값을 얻을 수 있다.

 

끝.

반응형

댓글