2013-03-10 8 views
0

스크립트 내에서 Node 객체를 만들고 인스턴스 변수에 사용하고 싶습니다. 아래 코드에서 root = Node('') 줄은 정의되지 않은 변수 노드를 말하는 오류가 발생합니다.python 스크립트에서 클래스 인스턴스화

if __name__ == '__main__': 
    #url = '' 
    #processWords(url) 
    currentWord = [] 
    root = Node('') 
    curr = root 
    words = ['adelaide', 'ahmedabad', 'calcutta', 'california', 'chicago', 'chennai', 'delhi', 'dubai', 'melbourne', 'mumbai'] 
    process(words) 
    play() 

class Node: 
    def __init__(self, char): 
     self.char = char 
     self.children = set() 

답변

2

당신은 당신이 그것을 사용하려고 전에 Node를 정의 할 필요가있다.

+0

감사합니다. 나는 당신의 대답을 받아 들일 수 있기까지 10 분을 기다려야합니다. 또한, 어떻게/어디서 (인스턴스 변수와 같은) 어떤 방법으로도 액세스 할 수있는 변수를 선언 할 수 있습니까? – tldr

+0

당신은 이미'self.char'와'self.children'을 사용했습니다. –

+0

나는 대본에서 의미심장했다. 예를 들어, 변수 curr은 main 함수에 설정됩니다. 그러나 메서드에서 사용하면 할당 전에 로컬 변수 'curr'이 참조되는 오류가 발생합니다. 그것은 curr이 지역 변수라는 것을 생각합니다. 제가 그것을 '인스턴스'변수가되기를 원할 때 – tldr