【发布时间】:2022-01-03 12:44:31
【问题描述】:
对于anytreeNode,我如何获取所有属性及其值?
例如,如果我这样做:
>>> from anytree import Node
>>> root = Node("root")
>>> s0 = Node("sub0", parent=root, foo="10", bar="ggg")
我怎样才能得到像[("foo", "10"), ("bar", "ggg")] 这样的东西?
我可以通过以下方式想到一条路线:
>>> s1=Node("dummy", parent=root)
>>> set(dir(s0))-set(dir(s1))
{'foo', 'bar'}
但我希望有更简洁的方式。
【问题讨论】:
-
您链接到的文档包括
Node的所有方法的列表,其中不包括您要求的内容。如您所知,您可以使用dir来获取所有属性名称(然后例如getattr来访问它们的值),但这将包括一些您认为不相关的。