[Python] sort( ), sorted( )

cracKey·2024년 5월 30일
0

Python에서 리스트를 정렬하는 두 가지 주요 메서드가 있습니다.
sort()와 sorted() 이 둘은 정렬을 수행하는 방식에 차이가 있습니다.

sort()

  • 원본 리스트를 직접 수정합니다.
  • 리스트의 메서드로, 리스트 객체에서 호출됩니다.
  • 반환값이 없습니다. 즉, None을 반환합니다.
  • 시간 복잡도는 평균적으로 O(n log n)입니다.
my_list = [3, 1, 4, 1, 5, 9]
my_list.sort()
print(my_list)  # Output: [1, 1, 3, 4, 5, 9]

sorted()

  • 새로운 리스트를 반환합니다.
  • 리스트뿐만 아니라 다른 이터러블(예: 튜플, 문자열, 딕셔너리 등)에도 사용할 수 있습니다.
  • 원본 데이터를 수정하지 않고, 정렬된 새로운 리스트를 생성합니다.
  • 시간 복잡도는 평균적으로 O(n log n)입니다.
my_list = [3, 1, 4, 1, 5, 9]
new_list = sorted(my_list)
print(new_list)  # Output: [1, 1, 3, 4, 5, 9]
print(my_list)   # Output: [3, 1, 4, 1, 5, 9]

sort()는 리스트를 직접 수정하는 메서드이고, sorted()는 새로운 정렬된 리스트를 반환하는 함수입니다. 상황에 따라 둘 중 하나를 선택하여 사용하면 됩니다.


멘토님께서 차이에 대해 직접 언급해주신 부분이라 한번 따로 공부를 해보았습니다.

profile
키보드가 부서지게 / 개발공부노트

0개의 댓글