當前位置:成語大全網 - 書法字典 - Python字典生成xml

Python字典生成xml

#編碼=utf8

#?介紹要使用的xml解析庫?在這裏,我們可以使用更輕的minidom。

進口?xml.dom.minidom

#?定義html輸出模板

#?後來,我們只想把學生數據部分(

模板?=?"""

& lthtml & gt

& lt桌子?border =“1“?style =“width:100%;文本對齊:?居中;”& gt

& lttr & gt

& lttd?colspan =“4“?& gt學生信息

& lt/tr & gt;

& ltstudent _ TRS/& gt;

& lt/table & gt;

& lt/html & gt;

"""

#?讀取xml文檔的內容,該文檔假定為。xml

多姆。=?XML . DOM . minidom . parse(‘a . XML‘)

#?獲取xml中的所有學生節點。

學生節點?=?dom.getElementsByTagName(“學生”)

#?初始化student_trs為空。

student_trs?=?""

#?遍歷每壹條學生信息

為了什麽?節點?在?學生節點:

#?getAttribute?用戶獲取節點的屬性並獲取id屬性值,即學生編號。

#?因為xml在解析後是以Unicode編碼的,所以這裏應該將其轉換為utf8編碼,下面也是如此。

希德。=?node . get attribute(“id“)。編碼(‘utf-8‘)?

#?獲取所有子節點

孩子?=?節點。子節點

為了什麽?孩子?在?兒童:

#?將子節點的名稱確定為?姓名、性別和專業?如果是,則收集相應的文本。

如果?child . nodename . encode(‘utf-8‘)?==?【名稱】:

#?使用?。子節點【0】。nodeValue?方法獲取節點的文本。

名字?=?child . child nodes【0】。nodevalue。encode(‘utf-8‘)?

如果?child . nodename . encode(‘utf-8‘)?==?【性別】:

性?=?child . child nodes【0】。nodevalue。encode(‘utf-8‘)?

如果?child . nodename . encode(‘utf-8‘)?==?“主要”:

專業?=?child . child nodes【0】。nodevalue。encode(‘utf-8‘)

#?用html編寫壹行學生數據。

學生_tr?=?“& lttr & gt& lttd & gt% s & lt/TD & gt;& lttd & gt% s & lt/TD & gt;& lttd & gt% s & lt/TD & gt;& lttd & gt% s & lt/TD & gt;& lt/tr & gt;”?%?(席德,?名字?性?專業)

#?將此行數據添加到總數據中

student_trs?+=?學生_tr

#?

html?=?template . replace(“& lt;student_trs/》,?student _ trs)

#?將html結果輸入?output.html

打開(“output.html“,?“w”)。書寫(html)

#?PS:妳提供的xml數據有問題。妳確實拿到了

#?正確的xml應該如下所示

"""

& lt?xml?version =“1.0“?編碼=“UTF-8”?& gt

& lt個人& gt

& lt學生& gt

& lt學生?id =“20140711“》;

& lt名稱》三

& lt性別》男性《/性別》

& lt專業》計算機

& lt/student & gt;

& lt/學生& gt

& lt/person & gt;

"""