def get_leaves(node, list_of_leaves=None):
list_of_leaves = {} if list_of_leaves is None else list_of_leaves
kids=node.getchildren()
for i in kids:
if (i.getchildren()):
get_leaves(i, list_of_leaves)
else:
list_of_leaves[i.tag]=i.text
print list_of_leaves
#data.append(list_of_leaves)
result = {}
#data=[]
tree = ET.parse('abc.xml')
root = tree.getroot()
get_leaves(root, list_of_leaves=result)
无论我打印什么,这都是有键的字典,因为标签和值是与标签关联的文本。
我想将这些词典存储在列表中。因此,相应的列表将是许多字典的列表。
注释行显示一个列表“data
”,我想在其中存储每个字典。
我正在打印,但如果我按照我现在编写的方式编写它,它只存储最后创建的字典。