본문 바로가기
개발이야기/python

sorted()와 sort()의 차이

by 효우너 2020. 5. 3.
728x90
반응형

python에서 정렬 문제가 자주 나오고 다른 종류의 문제에서도 정렬이 자주 쓰인다.

여기서 sorted()와 sort()가 쓰이는데 이 두 방법의 차이점은 무엇일까?

먼저, 예시로 설명하자면

a=[3,6,1,4,7]
b=sorted(a)
print(b) #[1, 3, 4, 6, 7]
a=[3,6,1,4,7]
a.sort()
print(a) #[1, 3, 4, 6, 7]

이렇게 된다.

결과는 당연히 같다.

sorted()는 원래의 list는 원래대로 놔두고, 한번 더 list를 가져와 정렬한다.

sort()는 원래의 list내에서 정렬이 되는 것이라고 생각하면 된다..!

따라서, sorted()는 메모리 사용량을 두배로 늘어난다고 보면 되고, 속도는 sort()가 빠르다.

때때로 원래의 list를 사용해야 할 경우에는 sorted()를 쓰는 것을 추천한다 :)


그렇다면 sort()와 sorted()의 기본은 오름차순으로 정렬되기 때문에 내림차순으로 정렬하려면 어떻게 해야 할까?

위처럼 예시를 통해 살펴보면,

a=[3,6,1,4,7]
b=sorted(a, reverse=True)
print(b) #[7, 6, 4, 3, 1]
a=[3,6,1,4,7]
a.sort(reverse=True)
print(a) #[7, 6, 4, 3, 1]

 

reverse=True만 삽입해주면 내림차순으로 정렬이 된다!

sorted()와 sort()에 대한 차이점을 확실히 이해됐길 바라면서 이만 총총..

 

728x90
반응형

'개발이야기 > python' 카테고리의 다른 글

list 덧셈  (0) 2020.08.21
itemgetter 사용하기  (0) 2020.05.31
피보나치 함수 구현 방법  (0) 2020.05.30
ascii 변환  (0) 2020.05.17
range 사용하기  (0) 2020.05.06

댓글