여니의 프로그래밍 study/파이썬

[Python] sort, sorted, key 매개변수 이용한 정렬

여니's 2021. 4. 27. 11:17

 

 

PYTHON 정렬 함수 정리


1. sort()

> 리스트를 정렬된 상태로 변경한다.

(리스트만을 위한 메소드)

오름차순 : sort()

내림차순 : sort(reverse=True)


2. sorted()

> 기존의 리스트를 변경하는 게 아니라, 정렬된 새로운 리스트를 반환해준다.

딕셔너리 객체도 받을 수 있다.

오름차순 : sorted()

내림차순 : sorted(reverse=True)

>> print(sorted(array,reverse=True))


3. key 매개변수 사용 (sorted + lambda)

> 특정한 데이터를 기준으로 정렬 가능해진다.

 

data=[['가',1],['다',3],['나',2]]
print(sorted(data,key=lambda x:x[0]))
#[['가', 1], ['나', 2], ['다', 3]]
print(sorted(data,key=lambda x:x[1]))
#[['가', 1], ['나', 2], ['다', 3]]

 

lambda x:x[0] > 0번째 인수를 기준으로 정렬한다

lambda x:x[1] > 1번째 인수를 기준으로 정렬한다.

 

만약 내림차순으로 정렬하고자 한다면?

data = [['가', 1], ['다', 2], ['나', 3]]
print(sorted(data, reverse=True, key=lambda x: x[1]))

sorted(배열,reverse=True,key=~~) 순으로

작성하면 된다.