skbio.tree.TreeNode.traverse¶
- TreeNode.traverse(self_before=True, self_after=False, include_self=True)[source]¶
Returns iterator over descendants
State: Experimental as of 0.4.0.
This is a depth-first traversal. Since the trees are not binary, preorder and postorder traversals are possible, but inorder traversals would depend on the data in the tree and are not handled here.
- Parameters
self_before and self_after are independent. If neither is True, only terminal nodes will be returned.
Note that if self is terminal, it will only be included once even if self_before and self_after are both True.
- Yields
TreeNode – Traversed node.
See also
preorder
,postorder
,pre_and_postorder
,levelorder
,tips
,non_tips
Examples
>>> from skbio import TreeNode >>> tree = TreeNode.read(["((a,b)c);"]) >>> for node in tree.traverse(): ... print(node.name) None c a b