python python操作xml檔案

2021-06-18 17:48:06 字數 1176 閱讀 4973

最近的工作和xml檔案打交道比較多,就想著看能否通過python去修改xml檔案中的屬性值,然後python中果然是有現成的庫可以使用,先來看一段**:

#!/usr/bin/python

try:

import xml.etree.celementtree as et

except importerror:

import xml.etree.elementtree as et

file = open('new.xml', 'w')

file.write('<?xml version="1.0"?>\n')

tree = et.elementtree(file='doc1.xml')

root = tree.getroot()

for item in tree.iter():

print item.tag, item.attrib

try:

if item.attrib['name'] == 'testing':

item.attrib['name'] = 'func_test'

except:

print item.tag, item.attrib

tree.write(file)

file.close()

**說明:

1.try:

import xml.etree.celementtree as et

except importerror:

import xml.etree.elementtree as et

這是乙個讓 python 不同的庫使用相同 api 的乙個比較常用的辦法。還是那句話,你的編譯環境和別人的很可能不一樣,所以這樣做可以防止一些莫名其妙的小問題。注意:從 python 3.3 開始,你沒有必要這麼做了,因為 

elementtree

模組會自動尋找可用的 c 庫來加快速度。所以只需要 

import

xml.etree.elementtree

就可以了。

2.重新定義了乙個file檔案用來寫最後的輸出檔案,這樣可以把原檔案保留下來,以方便其他的操作;

3.tree.iter()可以用來遍歷xml檔案中的所有元素;

4.for迴圈中還使用乙個try是用來避免沒有該屬性的元素導致的報錯。

Python Python刪除檔案操作

在深度學習研究和工程應用中,我們經常需要製作資料集,對資料集進行清洗,排除髒資料,這時候就需要用到python的刪除檔案操作了。我們必須匯入 os 模組,並執行其 os.remove 函式。我們直接舉乙個例子 假設removefile是乙個set,我們將想要刪除的資料路徑存在裡面 forfile i...

Python Python序列的切片操作

序列 consequence 是 python 中一種資料結構,這種資料結構根據索引來獲取序列中的物件。一般說來,具有序列結構的資料型別都可以使用 index,len,max,min,in,切片。如 a abcdefg print len a 7print max a gprint min a ap...

Python Python中的檔案模式操作

r 讀出 w 寫入 a 追加 模式描述 r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。rb以二進位制格式開啟乙個檔案用於唯讀。檔案指標將會放在檔案的開頭。這是預設模式。r 開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。rb 以二進位制格式開啟乙個檔案用於讀寫。檔案指標將會放在...