gpt4 book ai didi

python - 向 xml 文档添加注释

转载 作者:行者123 更新时间:2023-11-30 22:58:10 24 4
gpt4 key购买 nike

代码:

from lxml import etree

# Create the network XML file tree
root = etree.Element('network')
tree = etree.ElementTree(root)

# Create the nodes data
name = etree.Element('nodes')
root.append(name)
element = etree.SubElement(name, 'node')
element.set('id', '1')

# Create the links data
name = etree.Element('links')
root.append(name)
element = etree.SubElement(name, 'link')
element.set('id', '2')

# Print document to screen
print etree.tostring(root, encoding='UTF-8', xml_declaration=True, pretty_print=True)

输出:

<?xml version='1.0' encoding='UTF-8'?>
<network>
<nodes>
<node id="1"/>
</nodes>
<links>
<link id="2"/>
</links>
</network>

上面的代码产生这个输出。但是,除了在 tostring() 方法中用作参数并打印在文档顶部的声明之外。如果您希望评论在文档中途说出来,我还没有弄清楚如何使评论可见。我看过之前的帖子,比如this ,但它没有回答我的问题。有人可以帮我解决这个问题吗:

<?xml version='1.0' encoding='UTF-8'?>
<network>
<nodes>
<node id="1"/>
</nodes>

<!-- ==============Some Comment============================= -->

<links>
<link id="2"/>
</links>
</network>

最佳答案

要插入评论,您可以在代码后面执行以下操作:

comment = etree.Comment(' === Some Comment === ')
root.insert(1, comment) # 1 is the index where comment is inserted

如果您想添加空格,例如在 nodes 元素的尾部,that may mess with prettyprint ,因为一旦尾部有文本,它将不知道在哪里安全地添加空格。我想您可以使用与 ElementLib 中的 indent 相同的技术。 .

关于python - 向 xml 文档添加注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36320484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com