본문 바로가기
Study/Python study

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

by 파크영 2021. 6. 17.

sort와 sorted차이

 

sort()

<list>.sort(key = <function>, reverse = True|False)

- 리스트를 정렬해주는 기능을 하는 함수, 반환값이 None이다.

- 정렬된 값을 리턴하지 않는다.

- 원본의  내용을 정렬한 형태로 바꿔준다

- 리스트만 사용가능하다.

- 새로운 리스트를 만들지 않기 때문에 sorted보다 빠르다. 

 

  • sort() 사용
strings = ["sun", "bed", "car"]
n = 1

def solution(strings, n):
    return strings.sort(key=lambda x: x[n])
    
print(solution(strings, n))
    
# 출력
# 'None'
# sort() 사용
>>> type(strings.sort(key=lambda x: x[n]))
<class 'NoneType'>

# sorted() 사용

>>> type(sorted(strings, key=lambda x: x[n]))
<class 'list'>

 

 

sorted() 

sorted(<list>, key = <function> , reverse = True|False)

- 리스트를 정렬한 후 정렬된 리스트를 반환해주는 함수이다. 

- 원본의 내용을 바꾸지 않고 정렬된 내용을 새로운 리스트로 반환한다. 

- 리스트 이외에도 튜플, 문자열, 딕셔너리 등 모든 iterable에 사용가능하다. 

 

  • sorted() 사용
strings = ["sun", "bed", "car"]
n = 1

def solution(strings, n):
    return sorted(strings, key=lambda x: x[n])

print(solution(strings, n))

#출력
#['car', 'bed', 'sun']

 

 

* 둘다 오름차순 default이며 reverse로 오름차순, 내림차순 변경가능 

 

댓글