[Python] 파이썬 딕셔너리(dictionary) 정렬(reverse) 하는 방법 : sorted() 키값 기준 정렬, lambda x:x[1] 의미는?
파이썬에서 딕셔너리 자료형을 키 값 기준으로 정렬하는 방법과 리스트를 정렬하는 방법에 대해 알아봅니다.
sorted()함수를 사용하여 정렬할 수 있습니다.
■key값을 기준으로 정렬하기 (기본 오름차순)
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_dict = sorted(dict_value.keys())
print(sort_dict)
#실행결과
['Python', '코딩', '파이썬', '프로그래밍']
■key값을 기준으로 내림차순 정렬하기
sorted()함수의 인자값 중 reverse 인자의 값을 True로 적용하면 내림차순이 됩니다. 기본값은 False입니다.
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_desc_dict = sorted(dict_value.keys(), reverse=True)
print(sort_desc_dict)
#실행결과
['프로그래밍', '파이썬', '코딩', 'Python']
■value값을 기준으로 정렬하기(오름차순)
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_dict = sorted(dict_value.values())
print(sort_dict)
#실행결과
[1, 1, 2, 4]
■value값을 기준으로 내림차순 정렬하기
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_dict = sorted(dict_value.values(), reverse=True)
print(sort_dict)
#실행결과
[4, 2, 1, 1]
■키와 값 쌍 기준으로 정렬하기
sorted()함수를 사용하여 딕셔너리를 정렬할때 , items()를 사용하는 경우 튜플자료형 타입으로 리턴됩니다.
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_dict = sorted(dict_value.items()) #튜플자료형으로 리턴됨
print(sort_dict)
#실행결과
[('Python', 1), ('코딩', 2), ('파이썬', 4), ('프로그래밍', 1)]
for key, value in sort_dict:
print(key, ":", value)
#실행결과
Python : 1
코딩 : 2
파이썬 : 4
프로그래밍 : 1
['프로그래밍', '파이썬', '코딩', 'Python']
■키와 값 쌍 기준으로 내림차순 정렬하기
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_desc_dict = sorted(dict_value.items(), reverse=True)
print(sort_desc_dict)
#실행결과
[('프로그래밍', 1), ('파이썬', 4), ('코딩', 2), ('Python', 1)]
for key, value in sort_desc_dict:
print(key, ":", value)
#실행결과
프로그래밍 : 1
파이썬 : 4
코딩 : 2
Python : 1
■람다식(lamda)을 사용하여 정렬하는 방법(오름차순 ASC)
람다식에서 x[0]의 의미는 키(key)값 기준으로 정렬을 의미합니다. x[1]은 값을 기준으로 정렬한다는 것을 의미합니다.
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_desc_dict = sorted(dict_value.items(), key=lambda x: x[0])
print(sort_desc_dict)
#실행결과
[('Python', 1), ('코딩', 2), ('파이썬', 4), ('프로그래밍', 1)]
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_desc_dict = sorted(dict_value.items(), key=lambda x: x[1])
print(sort_desc_dict)
#실행결과
[('프로그래밍', 1), ('Python', 1), ('코딩', 2), ('파이썬', 4)]
■람다식(lamda)을 사용하여 내림차순 정렬하는 방법(DESC)
dict_value = {"파이썬": 4, "코딩": 2, "프로그래밍": 1, "Python": 1}
sort_desc_dict = sorted(dict_value.items(), key=lambda x: x[0], reverse=True)
print(sort_desc_dict)
#실행결과
[('프로그래밍', 1), ('파이썬', 4), ('코딩', 2), ('Python', 1)]
[파이썬 더 알아보기]
[프로그래밍/Python] – [Python] 파이썬 list, tuple, dictionary,set 예제 및 총정리
[프로그래밍/Python] – [Python] 파이썬 리스트(list) 값 삭제하는 방법 총정리: remove(), del(), clear(), pop()
[프로그래밍/Python] – [Python:자료구조] 파이썬 큐(Queue) , 우선순위 큐(PriorityQueue) 사용방법 및 예제 총정리
[프로그래밍/Python] – [Python] 파이썬 날짜 시간 계산 , 날짜 및 시간 표기법 예제 및 총정리 : datetime, timedelta
[프로그래밍/Python] – [Python] 파이썬 소수점 반올림, 돈 표기 방법 : 천단위 콤마(쉼표) 찍기( 천단위 구분 기호 추가), 숫자 콤마 제거