작성
·
250
2
아래와 같이 reverse함수를 사용해서 내림차순 정렬을 시키면, 결과값이 이상하게 출력됩니다.
-----------------------------------------
numbers2 = [2,8,5,4]
print(numbers2)
numbers2.reverse()
print(numbers2)
결과값 : [4, 5, 8, 2]
-----------------------------------------
str1 = ['abc','ghi','def']
print(str1)
str1.reverse()
print(str1)
결과값 : ['def', 'ghi', 'abc']
--------------------------------------------
대체 이유가 뭘까요..?
답변 2
2
안녕하세요.
reverse() 함수는 리스트의 순서를 뒤바꾸는 함수입니다. 리스트 내의 각 아이템을 정렬하는 함수는 아닙니다.
그래서,
그래서, [2, 8, 5, 4] 리스트를 reverse() 함수를 호출하면,
맨 뒤에 있는 4, 그 다음 뒤에 잇는 5, 그 다음 8, 그 다음 2 와 같이 순서를 뒤에서부터 앞으로 바꾸기 때문에
[4, 5, 8, 2] 와 같이 저장되는 것입니다.
말씀해주신 두번째 예도 이 부분을 이해하시면 동일합니다.
감사합니다.
0