강의로 돌아가기
-

list 질문

list=[1231,21,2145,224]

list1=list

list2=list[:]

로 저장하면

list = list.sort()

를 입력했을 때 list1은 순서대로 정렬된 list의 값이, list2에는 기존의 list 값이 저장되어 있는 것은 확인되는데 list값을 프린트해보면 아무값도 저장되어 있지 않고 None 이라고 뜹니다. 이유가 뭔가요?

1 개의 답변
프로그래머스

list1.sort()는 리턴하는 값이 없고, 이 자체로 list1을 소팅합니다.

예를 들어,

list1 = [5,2,3,6,7]
list2 = list1.sort()

윗 코드를 실행하면 list2에 [2,3,5,6,7]이 저장될거라 생각하신 것 같은데요.
실제로는 list1이 [2,3,5,6,7]으로 저장되고, list2에는 None이 저장됩니다.

list1을 그대로 유지한 채, list2에 list1을 소팅한 값을 저장하고 싶다면 이렇게 해주세요.

list1 = [5,2,3,6,7]
list2 = sorted(list1)
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.