Python-操做XML文件

1、python對XML文件的操做

  目錄

    一、xml 建立

    二、xml 數據查詢

    三、xml 數據修改

    四、xml 數據刪除

2、

  一、xml 建立node

  

 1 import xml.etree.ElementTree as ET
 2 
 3 new_xml=ET.Element('personinfolist')   #最外面的標籤名
 4 personinfo=ET.SubElement(new_xml,'personinfo',attrib={'enrolled':'aaa'}) #對應的參數是:父級標籤是誰,當前標籤名,當前標籤屬性與值
 5 name=ET.SubElement(personinfo,'name')
 6 name.text='xaoming'
 7 age=ET.SubElement(personinfo,'age',attrib={'checked':'yes'})
 8 age.text='23'
 9 
10 
11 
12 personinfo2=ET.SubElement(new_xml,'personinfo',attrib={'enrolled':'bbb'})
13 name=ET.SubElement(personinfo2,'name')
14 name.text='xaokong'
15 age=ET.SubElement(personinfo2,'age',attrib={'checked':'no'})
16 age.text='20'
17 
18 et=ET.ElementTree(new_xml)
19 et.write('text1.xml',encoding='utf-8',xml_declaration=True)#生成text1.xml

二、xml 數據查詢python

 1 import xml.etree.ElementTree as ET
 2 
 3 tree=ET.parse('text1.xml')
 4 
 5 root=tree.getroot()
 6 
 7 print(root.tag)
 8 
 9 #遍歷 xml 文檔
10 for i in root:
11     print(i.tag,i.attrib)    # tag是指標籤名,attrib 是指標籤裏的屬性,text 是指標籤內容
12     for j in i:
13         print(j.tag,j.attrib,j.text)
14         for k in j:
15             print(k.tag,k.attrib,k.text)
16 
17 #只遍歷 year 標籤
18 for w in root.iter('year'):  #只遍歷指定標籤
19     print(w.tag,w.text)

三、xml 數據修改學習

 1 import xml.etree.ElementTree as ET
 2 
 3 tree=ET.parse('text1.xml')
 4 
 5 root=tree.getroot()
 6 
 7 print(root.tag)
 8 
 9 #修改 xml
10 for 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
14 
15 tree.write('text1.xml')     #再吧數據寫回去

四、xml數據刪除spa

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')  #再把數據寫回文件

學習無止境,初心要篤行!!!code

相關文章
相關標籤/搜索