我有一个包含大量信息和标记的xml文件。 例如,我有一个标签:
<SelectListMap SourceName="Document Type" SourceNumber="43" DestName="Document Type" DestNumber="43"/>
我还有40个像这样的标签,它们有相同的节点,但是每个标签中这些节点的值是不同的。 SourceName和DestName的值相同。你知道吗
在某些标记中,DestName值为空,如下所示:
<SelectListMap SourceName="Boolean Values" SourceNumber="73" DestName="" DestNumber="0" IsInternal="True"/>
所以,我试图给空的DestName指定Sourcename的值。你知道吗
下面是我的Python代码:
import re
import xml.etree.ElementTree as ET
tree = ET.parse("SPPID04A_BG3 - Copy - Copy.xml")
root = tree.getroot()
for SelectListMap in root.iter('SelectListMap'):
#DestName.text = str(DestName)
for node in tree.iter('SelectListMap'):
SourceName = node.attrib.get('SourceName')
SelectListMap.set('DestName', SourceName)
tree.write("SPPID04A_BG3 - Copy - Copy.xml")
这个程序没有按正确的方式工作。有什么帮助或想法吗? 谢谢!你知道吗
如果
DestName
属性为空,则从不检查。如果将第一个for循环替换为以下内容,则应该得到所需的结果:相关问题 更多 >
编程相关推荐