根据 xml 文件中的索引检查标签是否存在

Check if tag exists by index in xml file

我写了一个 python 脚本 returns xml 文件标签值。它按索引遍历文件。如何检查索引是否存在?

这是基本蓝图。

tree = ET.parse(file)
root = tree.getroot()
root[0][1][0].text

我不确定你想达到什么目的。据我了解,您正在解析一些 XML 并且您正在尝试根据索引从 xml 元素之一获取文本。我认为您可以使用 XPath searching instead. It works even better if you use lxml module for parsing xmls instead of xml. Here 是 lxml 中 XPath 用法的描述。

无论如何,如果你真的喜欢使用索引,你不必检查特定索引下是否存在元素。如果索引不存在,则使用 try, except 块来捕获错误。

This answers 提供了一些您应该使用此方法的详细信息。

您的代码可能大致如下所示:

tree = ET.parse(file)
root = tree.getroot()
try:
     text = root[0][1][0].text 
except IndexError as e:
     #do something to handle error
     pass