我使用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