0
A
回答
1
我觉得你的代码应该看起来更像是这样的:
def inorder(self, file):
if self._left is not None:
file.write(str(self) + ' ')
self._left.inorder(file)
file.write(str(self) + ' ')
if self._right is not None:
file.write(str(self) + ' ')
self._right.inorder(file)
需要注意的是:
- 的
file
写一种说法,传递给递归调用,而不是open
ED每次; - 通过身份不平等测试
None
;和 - 我假设你有一个树结构,其中
self._left
和self._right
是与self
相同的类的实例(因为你已经提供了很少的类,很难确定,但self.inorder(self._left)
没有意义)。
当你调用该方法,在你的类的某些情况下instance
,它看起来像:
with open(...) as f:
instance.inorder(f)
相关问题
- 1. Json遍历问题,无法遍历值
- 2. jQuery遍历问题
- 3. JQuery遍历问题
- 4. jQuery遍历问题
- 5. 问题遍历JSON
- 6. 图遍历问题
- 7. 遍历一个文本文件,输入
- 8. 在Java中遍历一个日志文件。拉文件扫描
- 9. 循环遍历一个文件夹中的一组文件
- 10. 通过一个属性遍历文件
- 11. 遍历多个文件
- 12. C-链表遍历问题
- 13. jquery - DOM遍历问题
- 14. Xalan XPathAPI遍历问题
- 15. jQuery的遍历问题
- 16. 目录遍历问题c#
- 17. jQuery的遍历问题
- 18. jQuery的遍历问题
- 19. Python - 树遍历问题
- 20. 网格遍历问题
- 21. jQuery DOM遍历问题
- 22. 金字塔遍历问题
- 23. JavaScript遍历表问题
- 24. 批量遍历每个第X个文件
- 25. Python3 - 遍历行,然后一些列打印文本
- 26. 如何遍历文件中的一行?
- 27. 有问题在选择一个DOM目标jQuery遍历
- 28. 遍历在标题
- 29. 遍历SQL文件中的
- 30. 遍历PowerShell中的文件
为什么不把文件'j'的参数,而不是保持'open'ing呢?另外,你的支票应该是'不是无'。 – jonrsharpe
@jonrsharpe编辑我的代码 - 他们应该是不同的文件,每个遍历 – somebody
这不是我的意思;你重新打开每个递归,只需在外面打开一次,并将文件对象作为参数传递。 – jonrsharpe