본문 바로가기
* Language/Python

[Python] 파이썬 : sort()와 sorted() 차이

by codinguser 2020. 12. 20.

파이썬 sort()와 sorted() 차이
sort()와 sorted() 차이점

 

 

알고리즘 문제를 파이썬으로 풀 때 정렬을 해야 하는 경우가 있다.

 

 

이 때 사용 할 수 있는 경우는 크게 2가지 인데, 바로 sort()와 sorted()를 이용한 풀이이다. 그렇다면 이 두개의 차이점은 무엇일까?

 

 

 

 

 

 

 

sort()와 sorted() 차이?


 

결론적으로 말하자면 아래와 같다.

 

 

구 분 정 의  특 징
sort() 리스트 메서드 : 정렬 원래 목록 영향ㅇ
sorted() 파이썬 표준 내장함수 : 정렬 새로운 정렬 결과 반환, 원래 목록 영향X

 

* 기본적으로 2개 모두 오름차순 default

 

 

 

코드로 사용법과 결과 살펴보기


1) sort() 사용법과 결과

 

1
2
3
4
5
= [1,3,2,5,4]
 
a.sort()
print(a)
# [1, 2, 3, 4, 5]
cs

 

2) sorted() 사용법과 결과

 

1
2
3
4
5
6
7
8
= [1,3,2,5,4]
result = sorted(b)
 
print(result)
print(b)
 
# [1, 2, 3, 4, 5]
# [1, 3, 2, 5, 4]
cs

 

결과를 보면 알겠지만 sort()의 경우 기존 a의 값을 기본 오름차순으로 정렬 시키는 반면에 

sorted()의 경우는 기존 b의 값들은 내비두고 새롭게 정렬된 리스트로 반환시킨다.

 

 

 

 

기본 오름차순 정렬인 sort()와 sorted()로 내림차순으로 어떻게 정렬할까?


: 2가지 모두 영어단어로 "역"을 의미하는 reverse = True 로 이용하여 내림차순 정렬을 시행한다.

 

 

 

 

1) sort()

 

1
2
3
4
5
= [1,3,2,5,4]
 
a.sort(reverse = True)
print(a)
# [5, 4, 3, 2, 1]
cs

 

 

 

2) sorted()

 

1
2
3
4
5
= [1,3,2,5,4]
result = sorted(b, reverse = True)
 
print(result)
# [5, 4, 3, 2, 1]
cs

 

 

댓글