如何在python中解析深层嵌套XML

如何在python中解析深层嵌套XML,python,xml,Python,Xml,我是python新手,我有一种情况 <a> <b> <c> <d>abcd</d> <e> <f>pqrs</f></e></d></c></b></a> 该算法假定为:如果d有abcd,则查找f,如果f存在,则返回true,否则返回false和abcd 如果有人能帮助我解决这个问题,我将不胜感激

我是python新手,我有一种情况

<a>
<b>
  <c>
    <d>abcd</d>
       <e>
         <f>pqrs</f></e></d></c></b></a>
该算法假定为:如果d有abcd,则查找f,如果f存在,则返回true,否则返回false和abcd


如果有人能帮助我解决这个问题,我将不胜感激。

您可以使用递归XPath尝试查找匹配的标记和文本,然后使用另一个来测试是否存在另一个标记,如下所示:

import xml.etree.ElementTree as ET

def find_d(root):
    if root.findtext('.//d') == 'abcd':
        return root.find('.//f') is not None
    return False

xml_data = """<a>
<b>
  <c>
    <d>abcd</d>
       <e>
         <f>pqrs</f></e></c></b></a>"""

root = ET.fromstring(xml_data)
print find_d(root)

你读过关于如何解析XML的教程吗?您是否尝试过任何示例?请先介绍python和xml,然后看一看。在这个问题中,与AUTOSAR的关系在哪里?虽然我与您有同感,并着重看到嵌套极深的xml文档与AUTOSAR之间的明显关系,你真的应该考虑解释这个关系,或者因为它不是真正需要理解你的问题删除AutoSar标签。你也可以添加一个期望的结果。嘿,大家好,这是一个概念性的问题,我对整体编码有点陌生,但我会尽量更精确@Yunnosch:我会形成一个更好的问题版本。谢谢你,我需要一个像find text这样的命令。