작성
·
129
0
a = [ 1, 3, 5, 4, 2]
a.sort()
print(a)
해서 [1,2,3,4,5]가 나왔는데
print(a.sort())하면 None 이 나오네요... 이유를 알고싶습니다
답변 1
1
안녕하세요! python 공식 문서의
sorting 부분을 참고하시면 될 것 같습니다.
https://docs.python.org/ko/3/howto/sorting.html
질문자님께서 사용하신 list의 내장 함수인 list.sort( )는
대상 list 자체를 정렬하고, 함수의 반환값은 None입니다.
함수를 실행할때, 변하는건 list 자체이고, 함수 외부로, 즉 호출한
쪽으로 반환하는 의미있는 값은 없다는 뜻입니다.
이와 다르게 매개변수를 건네줘야하는 sorted( ) 함수는
기존 list는 변경하지 않고, 정렬된 새로운 리스트를 반환합니다.
original_list = [1,5,3,2]
print(sorted(original_list))
-> [1, 2, 3, 5]
print(original_list)
-> [1, 5, 3, 2]
(유사질문)
검색어: list.sort