2011-10-28 12 views
1

저는 Python을 처음 사용하고 객체를 저장하고 파이썬의 배열이나 목록에 액세스하는 데 어려움이 있습니다.Python 목록에서 객체 저장 및 검색

나는이 같은 일을 시도했습니다

class NodeInfo: 
    def __init__(self, left, value, right): 
     self.l = left 
     self.r = right 
     self.v = value 

tree[0] = NodeInfo(0,1,2) 

tree[0].l = 5 
tree[0].r = 6 
tree[0].v = 7 

내가 값을 할당하거나 변수에서 읽으려고 시도, 나는 다음과 같은 오류 얻을 :

tree[0] = NodeInfo(0,1,2) 
NameError: name 'tree' is not defined 

무엇 오전 내가 잘못했거나 파이썬에서 배열이나리스트로부터 객체를 할당하고 읽는 다른 방법이있다.

+0

관련이 없지만 이전 스타일 클래스를 삭제하고 새 스타일 클래스를 가져오고 싶을 수도 있습니다. 즉,'class NodeInfo :'는'클래스 NodeInfo (object) :'가됩니다. 파이썬 3을 사용하지 않는다면 (오래된 스타일 클래스가 삭제 될 때도 문제가되지 않을 것입니다.), 여전히 동일한 규칙을 사용하는 것을 선호합니다. [this] (http://stackoverflow.com/questions/54867/old-style-and-new-style-classes-in-python)을 참조하십시오. –

답변

8

목록을 먼저 작성하고 append 메소드를 사용하여 끝에 요소를 추가해야합니다.

tree = [] 
tree.append(NodeInfo(0,1,2)) 

# or 
tree = [NodeInfo(0,1,2)] 
+0

감사합니다. 두 가지 방법 모두 내가 필요한 것! – jao