[Python] Sort Dictionary by Key or Value

반응형

딕셔너리(dictionary)를 Key 또는 Value를 기준으로 정렬하는 방법을 확인해보겠습니다.

 

 

Key를 기준으로 정렬 (오름차순)

Key를 기준으로 딕셔너리를 오름차순으로 정렬하려면 sorted() 함수와 items() 메서드를 함께 사용하면 됩니다.

my_dict = {"apple": 3, "banana": 1, "orange": 2}

sorted_dict = dict(sorted(my_dict.items()))

print(sorted_dict)

위의 코드를 실행하면 다음과 같은 출력이 나타납니다:

{'apple': 3, 'banana': 1, 'orange': 2}

 

딕셔너리의 Key가 오름차순으로 정렬되었습니다.

 

 

 

Key를 기준으로 정렬 (내림차순)

Key를 기준으로 딕셔너리를 내림차순으로 정렬하려면 sorted() 함수의 reverse 매개변수를 True로 설정하면 됩니다.

my_dict = {"apple": 3, "banana": 1, "orange": 2}

sorted_dict = dict(sorted(my_dict.items(), reverse=True))

print(sorted_dict)

위의 코드를 실행하면 다음과 같은 출력이 나타납니다:

{'orange': 2, 'banana': 1, 'apple': 3}

딕셔너리의 Key가 내림차순으로 정렬되었습니다.

 

 

 

 

Value를 기준으로 정렬 (오름차순)

Value를 기준으로 딕셔너리를 오름차순으로 정렬하려면 sorted() 함수의 key 매개변수에 lambda 함수를 사용하여 Value를 반환하도록 지정합니다.

my_dict = {"apple": 3, "banana": 1, "orange": 2}

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

print(sorted_dict)

위의 코드를 실행하면 다음과 같은 출력이 나타납니다:

{'banana': 1, 'orange': 2, 'apple': 3}

딕셔너리의 Value가 오름차순으로 정렬되었습니다.

 

 

 

Value를 기준으로 정렬 (내림차순)

Value를 기준으로 딕셔너리를 내림차순으로 정렬하려면 sorted() 함수의 key 매개변수에 lambda 함수를 사용하여 Value를 반환하도록 지정하고, reverse 매개변수를 True로 설정합니다.

my_dict = {"apple": 3, "banana": 1, "orange": 2}

sorted_dict = dict(sorted(my_dict.items(), key=lambda x: x[1], reverse=True))

print(sorted_dict)

위의 코드를 실행하면 다음과 같은 출력이 나타납니다:

{'apple': 3, 'orange': 2, 'banana': 1}

딕셔너리의 Value가 내림차순으로 정렬되었습니다.