如何找到最后一个元素的索引

2024-10-02 22:27:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下代码,正在使用elementtree。每个<product>都有一个位置索引,可以与其他函数一起使用。在本例中,包含Cookie的产品的位置索引为2

如何找到最后一个<product>的位置索引

<parentelem>
    <project>
        <name>Project Title</name>
    </project>
    <product>
        <id>1</id>
        <name>Biscuit</name>
    </product>
    <product>
        <id>2</id>
        <name>Cookie</name>
    </product>
</parentelem>

Tags: 函数代码nameprojectid产品titlecookie
1条回答
网友
1楼 · 发布于 2024-10-02 22:27:08

可以将XPath与find方法一起使用:

import xml.etree.ElementTree as ET

xml_string = """<parentelem>
    <project>
        <name>Project Title</name>
    </project>
    <product>
        <id>1</id>
        <name>Biscuit</name>
    </product>
    <product>
        <id>2</id>
        <name>Cookie</name>
    </product>
</parentelem>"""

xml_obj = ET.fromstring(xml_string)

print("Nb of elements (children of parentelem): " + str(len(xml_obj)))
print("Count 'product' elements specifically: " + str(len(xml_obj.findall('product'))))
print("Name of last product: " + xml_obj.find('product[last()]/name').text)

相关问题 更多 >