2016년 7월 3일 일요일

파이썬 딕셔너리를 정렬하는 방법 (값 또는 키)

파이썬에서 dictionary를 정렬하는 방법

보통 sorted 명령을 사용하면 키를 이용해서 정렬이  됩니다.


보통 아래와 같이 key를 사용해서 정렬을 하는데


x = {1: 'a', 3: 'd', 4: 'c', 2: 'b', 0: 'e'}

sorted_list = sorted(x)


>>> for y in sorted(x):
...   print (y,x[y])
...
0 e
1 a
2 b
3 d
4 c

값을 이용해서 정렬을 할경우 3아래와 같이 하면 됩니다.

items() 키, 값을 모두 받아서, key 부분에는 원래 함수를 지정해주면되는데,

lambda 함수를 이용해서, 값을 이용한 정리,

>>> for y,v in sorted(x.items(), key =lambda x:x[1]):
...   print (y,v)
... 
1 a
2 b
4 c
3 d
0 e

이상입니다

댓글 없음:

댓글 쓰기