treelib父节点已存在却抛出NodeIDAbsentError异常求助
解决treelib库的NodeIDAbsentError异常问题
你的代码核心问题是变量名拼写不一致:
- 初始化树对象时用的是
my_tree = Tree()(带下划线) - 调用
create_node方法时却写成了mytree.create_node(不带下划线)
Python是大小写敏感的语言,my_tree和mytree是两个完全独立的变量。你实际要操作的树是my_tree,但父节点被错误添加到了未正确初始化的mytree变量中,导致后续添加子节点时,目标树my_tree里根本没有父节点,因此抛出NodeIDAbsentError异常。
修正后的代码如下:
from treelib import Node, Tree my_tree = Tree() # 统一使用正确的变量名my_tree my_tree.create_node("theParent") my_tree.create_node("theChild", parent="theParent")
内容的提问来源于stack exchange,提问作者BloxyBloxy
相关产品推荐
相关产品推荐

