[python] sort와 sorted

sort()sorted() 의 차이

  • sort() 는 리스트 자체를 정렬함
  • sorted() 는 리스트의 정렬된 복사본을 반환함

예를 들어 다음과 같은 리스트가 있다.

lalaland = ['Mia', 'Sebastian', 'Emily', 'Ryan']

sorted() 를 하면 원래 변수는 변하지 않는다.

sorted_lalaland = sorted(lalaland)
sorted_lalaland
['Emily', 'Mia', 'Ryan', 'Sebastian']
lalaland
['Mia', 'Sebastian', 'Emily', 'Ryan']

반면 sort() 를 하면 lalaland 자체를 정렬된 lalaland 로 바꾼다.

lalaland.sort()
lalaland
['Emily', 'Mia', 'Ryan', 'Sebastian']

정렬 방식은 기본적으로 오름차순이다. 내림차순으로 정렬하려면 인자에 reverse=True 를 넣어주면 된다.

>>> lalaland.sort(reverse=True)
>>> lalaland
['Sebastian', 'Ryan', 'Mia', 'Emily']