"append 메소드를 통해서 요소를 추가하려고 할 때 self.head는 더이상 None이 아니게 될거에요." 라고 하셔서, while 구문을 도는 그 안에서 업데이트 (self.head는 더이상 None이 아니게 되는) 되어야 하는 것 아닌가요?
+0
2022년 7월 22일
cheezzz 님의 설명대로라면 while iterator is not None 이 조건이 한번 while 문을 돌고 while 문 외부에서 있는 append 메소드를 통해서 self.head 가 더이상 None이 아니게 되다는 건데, 이건 도무지 이해가 가지 않습니다ㅠ
+0
2022년 7월 22일
while 반복문은 반복을하다 while 조건 이 False가 될때 비로소 끝나는 것 아닌가요?
+0
2022년 7월 22일
__str__ 의 역할을 아시나요? __str__을 정의한 class는 print()에 class의 인스턴스를 넣어주었을 때 __str__이 호출됩니다. 그래서 __str__에서는 문자열을 return 하게 됩니다. __str__에서는 문자열을 반환할 뿐 LinkedList에 Node를 추가하는 동작은 아닙니다.
+0
2022년 7월 22일
while 반복문은 LinkedList가 가지고 있는 Node들을 하나씩 가져와서 문자열에 값을 이어 붙이기 위한 반복문입니다. 말씀하신 것처럼 while 반복문을 돌다가 조건이 False가 되면 끝나는 게 맞습니다.
+0
2022년 7월 22일
제가 설명한 것을 어떻게 받아들이셨는지는 모르겠지만 while iterator is not None 이 조건이 한번 while문을 돌게 하지 않습니다. while문을 1번이라도 실행하게 하려면 iterator는 None이 아닌 값이어야 합니다. 그냥 while iterator is not None 이라는 코드만으로 반복문이 1회 실행하진 않습니다. 앞서 말하신것처럼 while의 조건문인 iterator is not None 이 True여야만 합니다.
댓글 8개