skbio.tree.TreeNode.traverse¶
- TreeNode.traverse(self_before=True, self_after=False, include_self=True)[源代码]¶
返回子体上的迭代器
状态:从0.4.0开始实验。
这是深度优先遍历。由于树不是二进制的,所以可以进行前序和后序遍历,但是序内遍历将依赖于树中的数据,因此不在这里进行处理。
- 参数:
self_before (bool) -- 如果为True,则在其子节点之前包含每个节点
self_after (bool) -- 如果为True,则在每个节点的子节点之后包含该节点
include_self (bool) -- 如果为True,则包含初始节点
self_before 和 self_after 都是独立的。如果两者都不是 True ,则只返回终端节点。
请注意,如果SELF是TERMINAL,它将只包含一次,即使 self_before 和 self_after 两者都是 True 。
- 生成器:
TreeNode --已遍历节点。
示例
>>> from skbio import TreeNode >>> tree = TreeNode.read(["((a,b)c);"]) >>> for node in tree.traverse(): ... print(node.name) None c a b