python xml读取和写入

kkkkk 2018年12月17日 22:48 Python基础

先说说如何创建一个XML文件吧

# -*- coding: utf-8 -*-
from xml.dom import minidom
impl = minidom.getDOMImplementation()
dom = impl.createDocument(None, None, None)#namespaceURI, qualifiedName, doctype
#write to dom
root = dom.createElement("skills")
for skillid in range(10):
    skill= dom.createElement('skill')
    skill.setAttribute('id', str(skillid))
    root.appendChild( skill )
dom.appendChild( root )
#end write to dom
#writexml(writer, indent, addindent, newl, encoding)
#writer是文件对象
#indent是每个tag前填充的字符,如:'  ',则表示每个tag前有两个空格
#addindent是每个子结点的缩近字符
#newl是每个tag后填充的字符,如:'\n',则表示每个tag后面有一个回车
#encoding是生成的XML信息头中的encoding属性值,
# 在输出时minidom并不真正进行编码的处理,如果你保存的文本内容中有汉字,
# 则需要自已进行编码转换。
f=file('c:\\skills.xml','w')
dom.writexml(f,'',' ','\n','utf-8')
f.close()


这样生成的XM了如下:

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

<skills>

<skill id="0"/>

<skill id="1"/>

<skill id="2"/>

<skill id="3"/>

<skill id="4"/>

<skill id="5"/>

<skill id="6"/>

<skill id="7"/>

<skill id="8"/>

<skill id="9"/>

</skills>

#######################

读取XML

>>> dom = xml.dom.minidom.parse('c:/skills.xml')

>>> root = dom.documentElement

>>> root.nodeName

>>> r2.nodeName

u'skills'


文章评论(0)
  • avatar kkkkkk 2018年12月21日 11:31
    一看就是复制粘贴的啦!
    kkkkk
    2018年12月21日 11:16
    本文紧扣材料,提出中心论点,进而由现象到本质,扣住概念本身加以阐释,并推论到其他。符合题意,内容充实。论述过程有条不紊地深入分析,摆事实讲道理,论述简洁。文章分析深刻,很好地体现了辩证思维,材料较丰富。
    回复
  • avatar kkkkkk 2018年12月21日 11:31
    Youkou老师厉害吧!
    kkkkklxinde
    2018年12月21日 11:17
    入情入理,甚见精纯。笔致轻松,理畅辞达豪放雄奇,不落俗套。面面俱到,论断正确。
    回复
  • avatar kkkkklxinde 2018年12月21日 11:17
    入情入理,甚见精纯。笔致轻松,理畅辞达豪放雄奇,不落俗套。面面俱到,论断正确。
    回复
  • avatar kkkkk 2018年12月21日 11:16
    本文紧扣材料,提出中心论点,进而由现象到本质,扣住概念本身加以阐释,并推论到其他。符合题意,内容充实。论述过程有条不紊地深入分析,摆事实讲道理,论述简洁。文章分析深刻,很好地体现了辩证思维,材料较丰富。
    回复