Python

[Python] sort(), sorted()를 이용한 리스트 정렬

meizzi 2023. 2. 7. 17:51
728x90
반응형

sort() 함수

  • list.sort() 메서드는 리스트 객체 자체를 정렬해주는 함수이다.
  • 리스트에서만 사용 가능하며 매개변수로 reverse를 받는다.
  • 기본적으로 리스트를 오름차순으로 정렬해준다.
  • 매개변수인 reverse는 옵션으로 이의 default 값은 False이다.
  • 오름차순으로 정렬하고 싶은 경우, list.sort()와 같이 매개변수를 쓰지 않거나 list.sort(reverse = False)와 같이 쓴다.
  • 내림차순으로 정렬하고 싶은 경우, list.sort(reverse = True)와 같이 쓴다.
  • 리스트 요소를 길이 순으로 정렬하고 싶은 경우, 매개변수로 key를 받는다.
    • key=len
num = [3, 2, 1, 5, 4]
num.sort() # 오름차순 정렬
print(num) # [1, 2, 3, 4, 5]
num = [3, 2, 1, 5, 4]
num.sort(reverse=True) # 내림차순 정렬
print(num) # [5, 4, 3, 2, 1]

sorted() 함수

  • 내장 함수로 iterable 객체로부터 정렬된 리스트를 생성한다.
  • 간단한 정렬을 하려면 이 함수를 사용한다.
  • 기존의 리스트를 변경하는 것이 아닌 정렬된 새로운 리스트를 반환한다.
  • 리스트 자체를 변경하는 sort() 함수보다 sorted() 함수가 더 편리하다.
  • 리스트만 사용할 수 있는 것이 아닌 어떠한 iterable 객체도 받을 수 있다. (리스트, 딕셔너리 등)
  • sort() 함수와 동일하게 매개변수인 reverse는 옵션으로 이의 default 값은 False이다.
  • 오름차순으로 정렬하고 싶은 경우, list.sort()와 같이 매개변수를 쓰지 않거나 list.sort(reverse = False)와 같이 쓴다.
  • 내림차순으로 정렬하고 싶은 경우, list.sort(reverse = True)와 같이 쓴다.
sorted([4, 2, 3, 5, 1]) # [1, 2, 3, 4, 5]

 

728x90
반응형