Python ElementTree获取具有条件的先前属性

问题描述 投票:0回答:2

我正在使用XML文件。我的文件是这样的:

import xml.etree.ElementTree as ET

xml = '''
<root>
    <a name='name1' label='label1'
      <b>
        <result para='1'
      </b>
    </a>
    <a name='name2' label='label2'
      <b>
        <result para='2'
      </b>
    </a>
    <a name='name3' label='label3'
      <b>
        <result para='3'
      </b>
    </a>
</root>
'''

myroot = ET.fromstring(xml)

如果a的参数等于1,我想从b打印标签。我有此代码:

for type_tag in myroot.findall('.//result'):
    if type_tag.attrib['para'] == '1':

但是我不知道如何返回a来打印标签。

任何帮助将不胜感激:)

提前感谢

python python-3.x elementtree
2个回答
1
投票

按照建议,我将问题倒退并像这样解决它:


0
投票

另一种较短的方法是使用xpath:

© www.soinside.com 2019 - 2024. All rights reserved.