我正在尝试制作这样的xml文件;
<root>
<a type="AAA">
<value1>1</value1>
<value2>2</value2>
<value3>3</value3>
</a>
<b type="BBB">
<value6>6</value6>
<value7>7</value7>
<value8>8</value8>
</b>
</root>
但是当我尝试附加xml元素时,就像;
<root>
<a type="AAA">
<value1>1</value1>
</a>
<a type="AAA">
<value2>2</value2>
</a>
<a type="AAA">
<value3>3</value3>
</a>
<b type="BBB">
<value6>6</value6>
</b>
<b type="BBB">
<value7>7</value7>
</b>
<b type="BBB">
<value8>8</value8>
</b>
</root>
这是代码。有人给我一些如何修复代码的建议吗?
xml = Element("root")
for i in list:
node = Element("a", type=i.type)
value = Element(i.name)
value.text = i.value
node.append(value)
xml.append(node)
非常感谢
答案 0 :(得分:0)
请勿在for循环内附加。 而是先创建节点,然后将属性附加到循环中,然后再将节点附加到xml根目录。
#crete one note before the loop.
node = Element("a", type=i.type)
for i in list:
value = Element(i.name)
value.text = i.value
node.append(value)
xml.append(node) # append here