1、xml 建立
1import
xml.etree.elementtree as et
23 new_xml=et.element('
personinfolist
') #
最外面的標籤名
4 personinfo=et.subelement(new_xml,'
personinfo
',attrib=) #
對應的引數是:父級標籤是誰,當前標籤名,當前標籤屬性與值
5 name=et.subelement(personinfo,'
name')
6 name.text='
xaoming
'7 age=et.subelement(personinfo,'
age',attrib=)
8 age.text='23'
9101112 personinfo2=et.subelement(new_xml,'
personinfo
',attrib=)
13 name=et.subelement(personinfo2,'
name')
14 name.text='xaokong
'15 age=et.subelement(personinfo2,'
age',attrib=)
16 age.text='20'
1718 et=et.elementtree(new_xml)
19 et.write('
text1.xml
',encoding='
utf-8
',xml_declaration=true)#
生成text1.xml
2、xml 資料查詢
1import
xml.etree.elementtree as et
23 tree=et.parse('
text1.xml')
45 root=tree.getroot()67
(root.tag)89
#遍歷 xml 文件
10for i in
root:
11print(i.tag,i.attrib) #
tag是指標簽名,attrib 是指標籤裡的屬性,text 是指標籤內容
12for j in
i:13
(j.tag,j.attrib,j.text)
14for k in
j:15
(k.tag,k.attrib,k.text)
1617
#只遍歷 year 標籤
18for w in root.iter('
year
'): #
只遍歷指定標籤
19print(w.tag,w.text)
3、xml 資料修改
1import
xml.etree.elementtree as et
23 tree=et.parse('
text1.xml')
45 root=tree.getroot()67
(root.tag)89
#修改 xml
10for node in root.iter('
year
'): #
要修改的標籤
11 new_year=int(node.text)+1
12 node.text=str(new_year)
13 node.set('
updsted_by
','kong
') #
給這個標籤(year)新增新的屬性 key:value
1415 tree.write('
text1.xml
') #
再吧資料寫回去
4、xml資料刪除
importxml.etree.elementtree as et
tree=et.parse('
text1.xml')
root=tree.getroot()
for country in root.findall('
country
'): #
會取這個標籤所有的資料
rank=int(country.find('
rank
').text)
if rank > 50:
root.remove(country)
#刪除資料
tree.write(
'output.xml
') #
再把資料寫回檔案
學習無止境,初心要篤行!!!
Python操作XML檔案 XML概述
xml 可擴充套件標置語言,為html 超文字標置語言 的補充。html用於顯示資料,而xml用於傳輸和儲存資料 一.xml語法 xml檔案通常分為兩部分 檔案宣告和檔案主體 檔案宣告 位於第一行 version標明此檔案所用的標準的版本號,必須要有 encoding標明此檔案中所使用的字元型別,可...
python的xml檔案操作
python中xml的操作可以使用dom庫 sax庫 etree庫 這個是新的 parsers庫。其中dom.minidom是dom輕量級模組,這裡介紹dom.minidom和etree兩個模組這裡以userinfo.xml檔案為例,xml 內容如下 xml解析 xmldoc minidom.par...
python 寫xml檔案的操作
要生成的xml檔案格式如下 sample xml thing ma xiaoju springs widgets,inc.first i think widgets are greate.you should buy lots of them forom spirngy widgts,inc fro...