我希望你们没事。我想操作任何树(python 库)节点中的数据我将字典存储在我的节点中,并想从节点中获取值并对其进行操作。我的代码:data={ "man":False, "goat":False, "lion":False, "grass":False }udo = Node(data)print (udo)print (udo["man"]) 结果:Node("/{'man': False, 'goat': False, 'lion': False, 'grass': False}")现在,如果我将使用字典索引调用对象它会产生错误。错误!---------------------------------------------------------------------------TypeError Traceback (most recent call last)<ipython-input-27-2d29abc19bbb> in <module>() 8 print (udo) 9 ---> 10 print (udo["man"])TypeError: 'Node' object is not subscriptable我阅读了 python any-tree 文档,但没有找到任何帮助。
2 回答

波斯汪
TA贡献1811条经验 获得超4个赞
我认为AnyNode就是你要找的
from anytree import AnyNode
data = {
"man": False,
"goat": False,
"lion": False,
"grass": False
}
a = AnyNode(**data)
print(a)
AnyNode(goat=False, grass=False, lion=False, man=False)
print(a.man)
False

神不在的星期二
TA贡献1963条经验 获得超6个赞
哦!在更仔细地阅读任何树文档后,我现在得到了。这是通过函数名称完成的,函数名称是节点的函数,它给出了您分配给节点的相同(值、数据结构等)。代码:data={ "man":False, "goat":False, "lion":False, "grass":False } udo = Node(data) 打印 (udo)
print(udo.name["man"])
结果:
Node("/{'man': False, 'goat': False, 'lion': False, 'grass': False}")
Udo Man is False
添加回答
举报
0/150
提交
取消