python 实现写入xml时每行按照xml的层级添加行前缩进
时间: 2024-05-09 21:17:45 浏览: 247
可以使用xml.dom.minidom模块中的Node.toprettyxml()方法来实现。这个方法会在每一行前面添加适当的缩进,以便更好地显示XML文档的结构。你可以先创建一个Document对象,然后在上面添加节点,最后使用toprettyxml()方法来生成格式化的XML文档。下面是一个示例代码:
```python
import xml.dom.minidom
# 创建Document对象
doc = xml.dom.minidom.Document()
# 创建根节点
root = doc.createElement('root')
doc.appendChild(root)
# 创建子节点
element1 = doc.createElement('element1')
root.appendChild(element1)
# 设置属性
element1.setAttribute('attr1', 'value1')
# 创建文本节点
text = doc.createTextNode('Hello, world!')
element1.appendChild(text)
# 生成格式化的XML文档
xml_str = doc.toprettyxml(indent=' ', encoding='utf-8')
print(xml_str)
```
这个示例代码生成的XML文档如下:
```xml
<?xml version="1.0" encoding="utf-8"?>
<root>
<element1 attr1="value1">Hello, world!</element1>
</root>
```
阅读全文