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 |
댓글