[Python] sort(), sort_values(), sorted()

My_oyster_house·2024년 6월 29일

sort() 함수의 반환 값

python의 리스트 함수인 sort() 함수는, 원본을 정렬하고 None을
반환한다.

a = list.sort()

이런식으로 a 라는 변수에 list.sort() 담으면 a 값에는 None 이 들어간다.

def solution(array):
    answer = 0
    array = list(array)
    array = array.sort(reverse=True)
    index = len(array)//2
    answer = array[index]
    return answer
# TypeError: object of type 'NoneType' has no len()

정렬된 리스트를 다시 사용하려면, sort() 메서드를 호출하고 나서 따로 할당하지 말고, 원본 리스트를 직접 정렬하면 된다.


def solution(array):
    array.sort(reverse=True)
    index = len(array) // 2
    answer = array[index]
    return answer

python의 sort(), sort_values(), sorted() 비교

특징sort_values() (Pandas)sort() (리스트 메서드)sorted() (내장 함수)
대상 객체데이터프레임(DataFrame)리스트(List)iterable 객체 (리스트, 튜플 등)
원본 변경 여부기본적으로 원본 변경 없음원본 리스트 직접 변경원본 iterable 객체 변경 없음
정렬 기준 설정열의 값을 기준으로 정렬 (by 매개변수)key 매개변수로 정렬 기준 설정 가능key 매개변수로 정렬 기준 설정 가능
정렬 방향 설정ascending 매개변수로 설정reverse=True 옵션으로 설정reverse=True 옵션으로 설정
반환 값정렬된 데이터프레임(또는 시리즈) 반환None을 반환, 원본 리스트 변경됨정렬된 새로운 리스트 반환
사용 예시df.sort_values(by='column_name')my_list.sort()sorted(my_list)
성능데이터프레임 크기에 따라 다름O(n log n) 시간 복잡도O(n log n) 시간 복잡도
profile
kwonhs.alice@gmail.com

0개의 댓글