1
當我嘗試獲取我的上一個節點時出現錯誤(TypeError: 'node' object is not callable
)。我究竟做錯了什麼?TypeError:'node'對象不可調用
我的節點類:
class node(object):
def __init__(self):
self.node=[]
self.info = None
self.prev = None
self.depth=-1
self.step = []
def prev(self):
return self.prev
def add(self):
node1=node()
self.node.append(node1)
node1.prev=self
return node1
我的代碼訪問prev
(last_node
應該有大約5的深度值):
rev = last_node
dep = rev.depth
revPath = [None]*(dep*4)
for g in range(0,dep):
revPath[dep - (g*4) - 1] = rev.step[3]
revPath[dep - (g*4) - 2] = rev.step[2]
revPath[dep - (g*4) - 3] = rev.step[1]
revPath[dep - (g*4) - 4] = rev.step[0]
rev = rev.prev()
附加信息:
我試圖穿越爲了看到被採取的路徑,樹倒退。 step[]
價值只是抓住了一些整數。代碼也運行良好,除了prev
(即,如果我拿出零件找到所採取的路徑,沒有問題)。
感謝您的快速回復。我沒有意識到讓它變得私密可能會造成或破壞看起來應該如此簡單的事情。我想我應該更多地瞭解這些類應該如何工作。 – Upgrayded
@Upgrayded Python沒有私人成員的明確概念;使用領先的下劃線來表示「隱私」是很傳統的。這有助於緩解名稱衝突,就像你在這裏經歷的那樣。 –