from treelib import Node, Tree
tree = Tree()
tree.create_node('class_fun',1)
tree.create_node('class',2,parent=1)
tree.create_node('identifier',3,parent=1)
tree.create_node('assign',4,parent=1)
tree.create_node(':',5,parent=1)
tree.show()
tree.show(key=False)#禁止排序就好了
效果如下:
class_fun
├── :
├── assign
├── class
└── identifier
---------------------
class_fun
├── class
├── identifier
├── assign
└── :
原因是在源代码中的`tree.py’
if key is None:
def key(node):
return node
if key:
children.sort(key=key, reverse=reverse)
key默认是None,所以它必然排序.我们必须要key=False
.
参考文献
https://github.com/caesar0301/treelib/issues/170