为什么在python中使用元素树写入相同的xml后,注释会丢失?

2024-10-03 17:28:47 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有如下所示的TARGET_FILE.xml

更新成员的值并使用将其写入同一文件后

目标文件树。写入(目标文件)

被覆盖的文件没有原始文件中的注释行,您能帮助解决这个问题吗

这是我的主要代码:

for node in NvItemData_Nodes: 
    if node.attrib.get("id") == "5153": 
        print "yes" 
        print node.find('Member').text 
        node.find('Member').text = SVN 
        print node.find('Member').text 
TARGET_FILE_TREE.write(TARGET_FILE)

Tags: 文件代码textinnodetarget目标for
1条回答
网友
1楼 · 发布于 2024-10-03 17:28:47

读取xml文件时,数据将转换为python数据结构。因为注释只是注释,所以它们将被丢弃,而不会保存在此数据结构中。(这就是评论的目的。)

保存时,您编辑的python数据结构将转换回xml格式,并覆盖以前的数据。由于注释不是数据结构的一部分,因此不会再次写入fil

在Python3.8中,可以像这样保留注释https://stackoverflow.com/a/59561426/8106583

对于Python2.7,我发现这个解决方案可以保留注释:https://stackoverflow.com/a/34324359/8106583

相关问题 更多 >