我使用ElementTree加载一系列XML文件并解析它们。在解析文件时,我从中抓取了一些数据(标题和一段文字)。然后我需要获取存储在XML中的一些文件名。它们包含在名为ContentItem
的元素中。Python开发 - elementtree XML和字符串操作
我的代码看起来有点像这样:
for item in dirlist:
newsML = ET.parse(item)
NewsLines = newsML.getroot()
HeadLine = NewsLines.getiterator("HeadLine")
result.append(HeadLine)
p = NewsLines.getiterator("p")
result.append(p)
ci = NewsLines.getiterator("ContentItem")
for i in ci:
result.append(i.attrib)
现在,如果只有一种类型的文件,这将是很好,但它包含了3种类型(JPG,FLV和MP4)。所以当我在视图中循环播放它时,它会吐出来,但如果我只想要那个,我怎么才能抓住flv?或只是MP4?它们并不总是以同样的顺序出现在列表中。
有没有办法说如果它在.mp4结束然后做这个动作,或者有没有办法在模板中做到这一点?
如果我尝试这样做;
url = i.attrib
if url.get("Href",()).endswith('jpg'):
result.append(i.attrib)
我得到一个错误的元组对象没有属性endswith。为什么这是一个元组?我认为这是一个字典?
什么'.endswith()'(http://docs.python.org/library/stdtypes.html#str.endswith)或'.splitext()'(HTTP://文档.python.org /库/ os.path.html#os.path.splitext)? – arie 2011-06-01 09:36:56
步骤1:搜索具有相同文件名匹配问题的其他人。 http://stackoverflow.com/search?q=%5Bpython%5D+filename+match第2步:选择一个类似的问题。 http://stackoverflow.com/questions/296173/how-do-i-copy-files-with-specific-file-extension-to-a-folder-in-my-python-versio。第3步:阅读别人做了什么。 – 2011-06-01 10:03:12
这不是我试图做的同样的事情。我只想匹配元素属性中的某些文本。 – Matthew 2011-06-01 10:18:48