有没有一种优雅的方法来使用python中的lxml来计算xml文件中的标记元素?

Auf*_*ind 16 python xml tags lxml count

我可以将xml文件的内容读取为字符串并使用字符串操作来实现此目的,但我想有一种更优雅的方法可以做到这一点.由于我没有在docus中找到线索,我在这里说:

给定一个xml(见下文)文件,你如何计算xml标签,比如示例中作者标签的数量是最优雅的方式我们假设每个作者只出现一次.

<root>
    <author>Tim</author>
    <author>Eva</author>
    <author>Martin</author>
    etc.
</root>
Run Code Online (Sandbox Code Playgroud)

这个xml文件很简单,但有可能的是,作者并不总是一个接一个地列出,它们之间可能还有其他标记.

zee*_*kay 25

如果要计算所有作者标签:

import lxml.etree
doc = lxml.etree.parse(xml)
count = doc.xpath('count(//author)')
Run Code Online (Sandbox Code Playgroud)


Kat*_*iel 8

使用XPath的使用count.