-
key를 이용한 리스트 정렬[1주차]어서와! 자료구조와 알고리즘은 처음이지?/[Day1] 3강: 정렬(Sort), 탐색(Search) 2021. 4. 19. 23:21
1. 정렬의 경우
(1). 숫자로 이루어진 리스트라면
오름차순으로 정렬
(2). 알파벳으로 이루어진 리스트라면
알파벳 순서로 정렬
2. 요소의 길이를 키로 지정하여 정렬하는 경우
L = ['abcd', 'xyz', 'spam'] sorted(L, key=lambda x: len(x))
정렬 결과는 ['xyz', 'abcd', 'spam']
만약 길이가 같은 abcd와 spam의 위치를 바꿔서 정렬한다면
L = ['spam', 'xyz', 'abcd'] sorted(L, key=lambda x: len(x))
정렬 결과는 ['xyz', 'spam', 'abcd'] 로 정렬 전의 상대적인 위치는 변하지 않음을 알 수 있다
3. 사전에서 키를 지정하여 정렬하는 예
다음의 사전이 있다고 할 때
L = [{'name' : 'John', 'score' : 83}, {'name' : 'Paul', 'score' : 92}]
(1) 레코드들을 이름순으로 정렬한다고 하면
L.sort(key=lambda x:x['name'])
(2) 레코드들을 점수가 높은 순으로 정렬한다고 하면
L.sort(key=lambda x:x['score'], reverse=True)