python 对xml文件bndbox结点添加新的子结点内容并换行修改缩进
时间: 2024-04-12 21:27:09 浏览: 173
可以使用 Python 的 `xml.etree.ElementTree` 模块来操作 XML 文件。下面是一个示例代码,演示如何向 XML 文件的 `bndbox` 结点添加新的子结点内容,并修改换行和缩进。
```python
import xml.etree.ElementTree as ET
# 加载 XML 文件
tree = ET.parse('your_xml_file.xml')
root = tree.getroot()
# 找到 bndbox 结点
bndbox = root.find('bndbox')
# 创建新的子结点
new_node = ET.Element('new_node')
new_node.text = 'New content'
# 添加新的子结点到 bndbox 结点
bndbox.append(new_node)
# 修改换行和缩进
tree_str = ET.tostring(root, encoding='utf-8', method='xml')
pretty_tree_str = minidom.parseString(tree_str).toprettyxml(indent=" ")
# 将修改后的 XML 写回文件
with open('your_modified_xml_file.xml', 'w') as f:
f.write(pretty_tree_str)
```
请将代码中的 `'your_xml_file.xml'` 替换为你实际的 XML 文件路径,将 `'new_node'` 替换为你要添加的子结点名称,将 `'New content'` 替换为你要添加的子结点内容。最后,将 `'your_modified_xml_file.xml'` 替换为你要写回的 XML 文件路径。
这段代码会将 XML 文件中的内容读入内存,然后将新的子结点添加到 `bndbox` 结点中,并使用适当的换行和缩进格式化 XML 内容,最后将修改后的 XML 写回文件。
阅读全文