파이썬에서 딕셔너리(dict) 정렬(sort)

in hive-141029 •  4 years ago 

우선 파이썬에서 리스트(list)를 정렬하는 방법은 아래의 링크에 있습니다.

파이썬에서 리스트(list) 정렬(sort)
https://steemit.com/hive-141029/@joviansummer/list-sort

{key1:value1, key2:value2,... } 형태의 딕셔너리 형식일 경우, 아래와 같이 sorted() 함수를 이용해서 정렬할 수 있습니다.

my_dict = { "xyz":10, "def": -1, "abc":5 }

# my_dict의 키(key)를 기준으로 정렬하여 my_dict_sorted에 할당
my_dict_sorted = sorted(my_dict.items())

my_dict.items()로 딕셔너리에 저장된 목록을 추출한 후에 sorted()로 정렬이 이루어집니다. 결과는 리스트 형식이며 각 항목은 key와 value의 튜플(tuple)이 됩니다.

print(my_dict_sorted)
[('abc', 5), ('def', -1), ('xyz', 10)]

키가 아니라 값(value)을 기준으로 정렬하려면 아래와 같이 합니다.

my_dict_sorted_by_value = sorted(my_dict.items(), key=(lambda x: x[1]))

my_dict.items()에서 두번째 항목(x[1])을 정렬 기준(key)으로 지정하였습니다.

print(my_dict_sorted_by_value)
[('def', -1), ('abc', 5), ('xyz', 10)]

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!