ssung_끄적끄적/Python_끄적

Python_sort() & sorted()

ssungcohol 2023. 9. 14. 15:36

sort() 와 sorted()의 차이점

 

우선적으로 결론을 말하자면 두 가지 모두 오름차순으로 정렬을 해주는 것이다.

하지만 무엇이 다를까?


구분 역할 정의
sort() 리스트 메서드 : 정렬 기존 리스트에 영향 O
sorted() 파이썬 표준 내장 메서드 : 정렬 리스트 외에 것들도 정렬
기존 값에 영향 X, 새로운 정렬 결과 도출

sort()

  • 리스트 자료형의 메서드
  • 리스트만! 정렬할 수 있고, 정렬 시 공간 절약을 위해 리스트를 제자리에서 수정
  • 원본 리스트를 저장하기에 별도의 리스트를 생성하지 않음
List_a = [3, 5, 1, 2, 4]

sort(List_a)
print(List_a)

# [1, 2, 3, 4, 5]

sorted()

  • 파이썬 내장 함수로 Iterable 한 객체(리스트, 튜플, 딕셔너리) 모두 정렬 가능
  • sort()와 다르게 원본 객체를 건드리지 않고, 새로 정렬된 '리스트'를 반환
    (튜플을 정렬하더라도 리스트로 반환)
tuple_a = (2, 4, 7, 3, 6)

tuple_b = sorted(tuple_a)
print(tuple_a)
print(tuple_b)

#(2, 4, 7, 3, 6)
#[2, 3, 4, 6, 7]
728x90