TIL-013 | Python_sort()와 sorted()의 차이

Lee, Chankyu·2021년 9월 18일
0
post-thumbnail

📝 프로그래머스 문제들을 풀면서 sort(), sorted() 함수의 명확한 차이점을 알지 못한다는 것을 인지하여 둘의 차이점에 대해 알아보고자 한다.

sort()

  • 기본 구조 : 리스트명.sort()
a = [3, 1, 2, 4, 5]
a.sort() // None
a // [1, 2, 3, 4, 5]
  • sort() 함수는 리스트의 원본값을 직접 수정한다.
  • a.sort() 를 출력해보면 None 값이 출력된다.
  • sort() 함수 사용 이후에 변수 a 값을 출력해보면 원본값이 정렬되어 있다.

sorted()

  • 기본 구조: sorted(리스트명)
a = [3, 1, 2, 4, 5]
sorted(a) // [1, 2, 3, 4, 5]
a //  [3, 1, 2, 4, 5]
  • sorted()함수는 리스트 원본 값은 변동이 없고 정렬 값을 반환한다.
  • 위의 코드에서 sorted(a)를 출력해보면 정렬되어 있는 것을 볼 수 있다.
  • 반면에 변수 a 값은 처음과 동일하다.

✅ sorted() 함수는 리스트 뿐만아니라 반복 가능한 모든 작업에 적용할 수 있다.
✅ 리스트를 정렬할때는 list.sort() 를 사용하고 다른 객체를 새로 정렬하려면 sorted() 함수를 사용하면 된다.
✅ sort() 함수의 경우 list의 복사본 생성이 필요없기 때문에 sorted() 함수보다 빠르다.

profile
Backend Developer - "Growth itself contains the germ of happiness"

0개의 댓글