显示每个XML元素的值并将它们附加到列表中。

时间:2016-05-12 21:33:32

标签: python xml

我有一个XML文件,我想用Python ElementTree阅读。

<items>
   <item>
      <title>title 1</title>
   </item>
   <item>
      <title>title 2</title>
   </item>
   <item>
      <title>title 3</title>
   </item>
</items>

我想显示每个title元素的值并将它们附加到列表中。我想做的是:

['title 1', 'title 2', 'title 3']

这是我的源代码:

import xml.etree.ElementTree as ET

tree = ET.parse('asdad.xml')
root = tree.getroot()
for item in root.findall('item'):
    content = item.find('content').text
    title = [i for i in item.find('title').text]
    print(title)

但我的消息来源没有提供所需的输出。

谢谢大家!

2 个答案:

答案 0 :(得分:0)

获得这样的标题。不确定你是如何想出content

title = item.find('title').text

答案 1 :(得分:0)

您可以使用列表comp找到findall('.//item/title')的所有标题并从中提取文本:

 [t.text for t in root.findall('.//item/title')]