Python與xml之更新篇

2021-04-03 01:51:27 字數 1606 閱讀 4490

python

與xml

之更新篇

xml

檔案,接下來是寫與更新

(modify

、delete)xml

檔案的節點。對於

xmldom

來對xml

進行操作。

test.xml

的結構如下:

<?xml version="1.0" encoding="utf-8"?>

64<./studentnumber>

62<./studentnumber>

1、

匯入minidom

:from xml.dom import minidom 2、

生成記憶體中的對映:

self.xmlfile= minidom.parse(「c://test.xml」)

這時xmlfile

在記憶體中為樹狀結構,其實也就是你

xml的結構 3、

獲得樹狀結構的第一級節點:

self.children = self.xmlfile.firstchild.childnodes

此時的children

就是class

節點的集合(它相當於乙個存貯

class

節點的陣列) 4、

更新包括增加、修改、刪除數節點。獲得班號為

09120016

的class節點

i = 1

while i

id = str(self.children[i].attributes['id'].value)

if id == 『

09120016』

break

i = i+2

classnode = self.children[i]

classnode

就是你要處理的節點

(注意:

i=1從陣列的第乙個開始取節點,

i=i+2

因為xml

中的回車換行也算乙個節點)

5、獲得如

id之類的值在

4中提到,那麼如何過得如

studentnumber

標籤對中的值呢? 通過

children[i].getelementsbytagname("studentnumber")[0].firstchild.nodevalue

就可以獲得它的值,要改變它的值就把新值賦給它就可 6、

刪除xml

中的09120016

班就把相應的節點刪除就可以了 7、

要增加乙個班級咋辦呢?

建乙個空的

xml節點

<?xml version="1.0" encoding="utf-8"?>

<./studentnumber>

根據1、2

步導成記憶體中的空節點,在根據3、

4、

5步相應的方法賦值,然後把該賦值後的節點加到

children

節點陣列中(不要忘了先新增乙個回車換行節點

indentnode = self.xmlfile.createtextnode('/n'+'/t'*3)

python基礎 更新篇

對於windows來說就很簡單了 對於linux系統的主機來說就有點複雜了 現在linux主機自帶的python版本都使2.x版的,而且linux的yum依賴自帶python,為防止錯誤,此處更新其實就是再安裝乙個python 檢視預設python版本 python v 1 安裝gcc,用於編譯py...

python之xml檔案解析

xml檔案內容如下 4maxid username pytest passwd 123456 pythoncaption 4 測試caption item login 2 zopecaption item catalog import xml.dom.minidom 開啟xml文件 dom xml....

python之xml處理模組

xml是實現不同語言或程式之間進行資料交換的協議,跟json差不多,但json使用起來更簡單,不過,至今很多傳統公司如金融行業的很多系統的介面還主要是xml。xml的格式如下,就是通過 節點來區別資料結構的,檔名xmltest.xml 22008 141100 52011 59900 692011 ...