Python 操作XML檔案

2021-10-07 02:16:59 字數 2478 閱讀 3263

1、xml 建立

1

import

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 資料查詢

1

import

xml.etree.elementtree as et

23 tree=et.parse('

text1.xml')

45 root=tree.getroot()67

print

(root.tag)89

#遍歷 xml 文件

10for i in

root:

11print(i.tag,i.attrib) #

tag是指標簽名,attrib 是指標籤裡的屬性,text 是指標籤內容

12for j in

i:13

print

(j.tag,j.attrib,j.text)

14for k in

j:15

print

(k.tag,k.attrib,k.text)

1617

#只遍歷 year 標籤

18for w in root.iter('

year

'): #

只遍歷指定標籤

19print(w.tag,w.text)

3、xml 資料修改

1

import

xml.etree.elementtree as et

23 tree=et.parse('

text1.xml')

45 root=tree.getroot()67

print

(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資料刪除

import

xml.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...