我是python的新手,我想知道如何在父标记中获取子元素的大小或数量,让我们说participants
。我们的想法是在participant
代码中获取participants
的数量。
这是xml:
<participants>
<participant>
<userId>James</userId>
<role>Author</role>
</participant>
<participant>
<userId>Alex</userId>
<role>Reader</role>
</participant>
</participants>
我正在使用xml:
import xml.etree.ElementTree as ET
作为模块
并ET
分配了dom = ET.fromstring(output)
到目前为止,为了解析xml,我编写了以下代码:
for participant in dom.iter('participant'):
userId = participant.find('userId').text
role = participant.find('role').text
但是我想在participant
标签中获取participants
的数量/长度,这是我正在尝试做的但它没有给我这个长度:
print 'length', dom.findall('participants').length
我想要的输出应该是:
length 2
答案 0 :(得分:3)
尝试
print(len(dom.findall('participant')))
答案 1 :(得分:2)
这应该给你长度:
root = tree.getroot()
length = len(root.findall('participant'))
print length
答案 2 :(得分:1)
>>> dom.findall('participant')
[<Element 'participant' at 0x10dd74090>, <Element 'participant' at 0x10dd74250>]
>>> len(dom.findall('participant'))
2