我创建一个类节点
class Node(object):
def __init__(self, data, isQuestion = False, left = None, right = None):
self.left = left
self.right = right
self.data = data
self.isQuestion = isQuestion
和一个函数
def runTree(curNode):
if (curNode is not None):
if(curNode.isQuestion == True):
print("\n\t")
print(curNode.data)
answer = input("\nEnter your input(1-yes, 0-no):\n")
if(answer == '1'):
runTree(curNode.right)
elif(answer == '0'):
runTree(curNode.left)
else:
print("\n\t")
print(curNode.data)
当我用“runTree”调用函数时(curNode.左)'或'runTree'(curNode.右)'它不访问我的根对象引用的叶,而是创建一个新对象。如何传递左叶或右叶并在函数中访问该对象?你知道吗
对不起,我误解了盖洛尼达
整个代码是:
好的,这里修改了我的答案。你知道吗
请修改你的问题,以便将来的读者理解我的回答。你知道吗
现在我要回答你对自己问题的回答,这可能会让别人感到困惑。你知道吗
主要的一点是,参数传递并不像您期望的那样工作。你知道吗
Python有点特别,有一些关于这方面的好文章。只是不记得链接。你知道吗
下面的代码在调用
runTree()
之前创建一个空节点。 然后runTree()可以更改对象并添加问题或答案。你知道吗相关问题 更多 >
编程相关推荐