【发布时间】:2023-04-02 07:52:01
【问题描述】:
如果我满足代码中的 if 条件,我想将标志返回为 TRUE,但我无法做到。
class createnode:
def __init__(self,data):
self.data = data
self.left = None
self.right = None
def traverse(self, root,flag,sum,prev=0):
if root:
if root.data + prev==sum:
print("pairs are",root.data,prev)
flag=True
return flag
self.traverse(root.left,flag,sum,prev=root.data)
self.traverse(root.right,flag,sum,prev=root.data)
else:
return
root = createnode(8)
root.left=createnode(4)
root.right = createnode(10)
root.left.left=createnode(2)
root.left.right=createnode(6)
root.right.left = createnode(9)
root.right.right = createnode(12)
flag=root.traverse(root,flag=False,sum=19)
print(flag)
输出:
是的
但我的输出是 None。有人可以帮我吗?
【问题讨论】:
-
您有一个不返回任何内容的
return
语句 - 即None
。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何从python中的递归返回标志[重复] - Python技术站