如何在xml中保存数据

15 浏览
0 Comments

如何在xml中保存数据

我想以以下格式将数据保存在xml中:


    

我尝试了以下代码,但不知道如何保存为上述格式:

import xml.etree.cElementTree as ET
root = ET.Element("posts")
row = ET.SubElement(root, "row")
ET.SubElement(row, "questionText").text = questionText
ET.SubElement(row, "votes").text = votes
ET.SubElement(row, "tags").text = tags
tree = ET.ElementTree(root)
tree.write("data.xml")

0
0 Comments

如何在xml中保存数据

在这段代码中,SubElement文档表示该函数有以下参数:parent, tag, attrib={}, **extra

你忽略了tag参数,所以你会得到一个错误TypeError: SubElement() takes at least 2 arguments (1 given)。你需要像下面这样写:

import xml.etree.cElementTree as ET
root = ET.Element("posts")
row = ET.SubElement(root, "row", attrib={"foo":"bar", "baz":"qux"})
tree = ET.ElementTree(root)
tree.write("data.xml")

输出结果为:<posts><row baz="qux" foo="bar" /></posts>

太棒了!它按照我想要的方式工作得很完美,但它只打印了一行。我想要打印多行,也就是说如果有20行要打印,它应该写入20行。我在循环中添加了它。

如果你在谈论XML文件的格式化,有很多选项:stackoverflow.com/questions/17402323/…

0