[Python] sort() vs. sorted()

재영양·2022년 9월 13일
0

Study

목록 보기
2/14

파이썬으로 정렬을 해야할 때, sort()와 sorted() 중 어느 것을 사용해야 할까?

- sort()

  • 원본 리스트를 정렬하여 순서를 변경합니다.
  • 아무것도 반환하지 않습니다. (None 반환)
a1 = [6, 3, 9]
a2 = a1.sort() # 원본을 정렬하고 수정합니다
>>>
a1: [3, 6, 9]
a2: None

- sorted()

  • 정렬된 새로운 리스트를 반환합니다.(원본 리스트에는 영향x)
  • 모든 iterable에 동작합니다. (list, tuple, dict, 문자열 등)
b1 = [6, 3, 9]
b2 = sorted(b1) # 원본은 유지하고 정렬한 새 리스트를 만듭니다
>>>
b1: [6, 3, 9]
b2: [3, 6, 9]


정리

  • sort 함수는 리스트명.sort( ) 형식으로 "리스트형의 메소드"이며 리스트 원본값을 직접 수정합니다. 리턴값이 None
  • sorted 함수는 sorted( 리스트명 ) 형식으로 "내장 함수"이며 리스트 원본 값은 그대로이고 정렬 값을 반환합니다.
  • sort 함수는 복사본을 만들지 않기 때문에 sorted 함수보다 빠릅니다.

0개의 댓글