쥬피터 노트북에서 실행이 되는것이 파이썬에서는 되지 않습니다. (NameError: name 'XXX' is not defined)
조회수 1861회
class Tensor:
def __init__(self, data, shape):
self.data = data
self.shape = shape
self.tensor = shape_data(self.data,self.shape) # <-- *
def shape_data(self,data,shape):
temp1=[]
temp2=[]
shape.reverse()
.....
이런식으로 코딩을 작성했는데 주피터노트북에서는 문제 없이 실행이 되는 것이 파이썬 IDLE로 옮기니 * 으로 표시한 부분이
이런식으로 에러가 뜨네요. 함수 이름을 다 선언해줬는데 왜 not defined하는지를 종잡을 수 없네요. 함수가 순서가 먼저오게해도 의미가 없고 해결이 안되네요.
쥬피터노트북과 파이썬이 왜 차이나는지 모르겠어요.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
self.tensor = self.shape_data(self.data,self.shape)
클래스의 메소드는
self.
과 함께 호출합니다.주피터에서 잘 되었었다면, 주피터에서는 일반함수로
shape_data
를 정의했었던 셀이 이미 실행되어,shape_data
라는 함수를 알고 있었을 것으로 추정됩니다.
댓글 입력