Skip to main content
 首页 » 编程设计

Python:使用 ElementTree 访问 XML 中的下一个元素

2025年05月04日8zlslch

我的XML文件没有标签,解析起来不太友好。我试图找到一个元素并更改它:

...         
    <dict> 
        <key>Arguments</key> 
            <dict> 
                <key>TestArchive</key 
                <string>testArchive.tar</string> 
            </dict> 
            .... 
    </dict> 
... 

我想做的是获取和更改“testArchive.tar”字符串,因为这个字符串每次都可能改变,所以我使用 TestArchive 作为 anchor

from xml.etree import ElementTree 
with open ('file.xml', 'rt') as f: 
    tree = ElementTree.parse(f) 
 
for item in tree.iter(): 
    if item.text == "TestArchive": 
         .... 

如何获取下一个元素?在我的情况下,哪个应该是我正在寻找的项目?

请您参考如下方法:

我能找到的唯一方法是使用 enumerate() 并将父级索引为列表。在你的情况下:

items = list(tree.iter()) 
for i, item in enumerate(items): 
    if item.text == "TestArchive": 
         next_item = items[i + 1]