배열 정렬 - key Lambda

dobyming·2022년 12월 28일
0

key Lambda 개념

언제?

: 배열을 정렬 시, 일반적인 오름/내림차순이 아닌 특정 기준으로 배열을 정렬하고자 할때 사용

Syntax : sorted(타겟배열, key=lambda 인자 : 표현식)

▷ key 인자에 표현식을 넘겨주면 우선순위가 정해짐.

c = sorted(a, key = lambda x : x[0]) #튜플의 0번째 요소 기준 오름차순 정렬
c = [(0, 1), (1, 2), (3, 0), (5, 1), (5, 2)]

d = sorted(a, key = lambda x : x[1]) #튜플의 1번째 요소 기준 오름차순 정렬
d = [(3, 0), (5, 1), (0, 1), (1, 2), (5, 2)]

⭐ x가 (주어진 자료구조에서) 각 요소를 도는 iterator라고 생각하면 된다.

▷ 비교할 아이템이 요소가 복수 개일 경우, 튜플로 우선순위를 정해줄 수 있다.
-를 붙이면, 현재와 반대차순으로 정렬된다.

e = sorted(a, key = lambda x : (x[0], -x[1]))
=> [(0, 1), (1, 2), (3, 0), (5, 2), (5, 1)]

f = sorted(a, key = lambda x : -x[0])
=> [(5, 1), (5, 2), (3, 0), (1, 2), (0, 1)])

0개의 댓글