list.sort() 메서드는 list 객체 자체를 정렬해주는 함수이다.
리스트에만 사용이 가능하고 기본적으로 리스트를 오름차순으로 정렬해주는 기능을 한다.
some_list = [5, 7, 2, 3, 1]
print(sorted(some_list))
print(some_list.sort())
결과값: [1, 2, 3, 5, 7]
결과값: None
아래의 코드에서 알 수 있듯이
sorted
는some_list
에는 영향을 주지 않는다. 새로운 리스트를 만들어 반환해줄 뿐이다.
some_list = [5, 7, 2, 3, 1]
sorted(some_list)
print(some_list)
결과값: [5, 7, 2, 3, 1]
반면
sort
는some_list
객체 자체를 정렬해버린다.
some_list = [5, 7, 2, 3, 1]
some_list.sort()
print(some_list)
결과값: [1, 2, 3, 5, 7]
즉 리스트에서만 사용가능한 함수인 sort는 해당 리스트 객체 자체를 정렬하는 것과 달리
sorted 함수는 정렬한 새로운 리스트를 반환하는 것을 확인할 수 있다
reference:
https://www.codeit.kr/community/questions/UXVlc3Rpb246NWUzNDUyMjU4MGU1MTMzNzNkOTYxZTRm