1 답변
-
다음부터는 그냥 에러가 난다고만 적지 마시고 에러 메시지의 내용도 함께 알려주세요
코드를 돌려본 건 아니라 어느 부분에서 에러가 나는지는 모르겠습니다만, 우선 제 눈에 보이는 걸 말씀드릴게요
python list의 append는 대략 이런 느낌입니다.
def append(self, x) self.a[len(self.a):] = [x]
리스트의 마지막에 parameter로 전달받은 값을 연결하는 건데, 중요한 건 리턴 값이 없다는 거죠
다음과 같은 방법으로 간단히 테스트 해볼 수 있습니다.
>>> a = 1 >>> b = [] >>> c = b.append(a) >>> b [1] >>> c >>>
b에는 정상적으로 a가 append 되었으나, append는 리턴값이 없기 때문에 c는 아무것도 아니게(NoneType) 됩니다.
올려주신 코드도 마찬가지로
close.append(a)
의 리턴값이 없기 때문에 closeness에는 아무 값도 저장되지 않고, 따라서 아무 것도 아닌 값에 sum이나 len을 구하려고 하면 에러가 나게 되는 것입니다.- 감사합니다. 에러값도 함께 드립니다. AttributeError: 'int' object has no attribute 'append' 알 수 없는 사용자 2020.4.8 13:05
댓글 입력