python 读写xml文件

python 生成xml文件,demo如下:

# 生成xml文件
from xml.dom.minidom import *

dic_data={"school1":{"name":"陕州中学","type":"初中"},
          "school2":{"name":"实验高中","type":"高中"}
          }

# 创建文档元素
doc=Document()
# 创建根节点
root=doc.createElement("manages")
# 根节点加入到文档模块
doc.appendChild(root)

i=1
for key in dic_data:
    # 创建子节点_学校
    school = doc.createElement("school")
    school.setAttribute("id",str(i))
    i = i + 1

    # 将子节点加入到根节点中
    root.appendChild(school)

    dic_val=dic_data[key]

    for val in dic_val:
        # 编辑子节点内容
        name = doc.createElement(val)
        name.appendChild(doc.createTextNode(dic_val[val]))
        school.appendChild(name)


# 创建xml文件
xmlfile=open("test.xml","w",encoding="utf-8")

doc.writexml(xmlfile, indent="", addindent="\t", newl="\n", encoding="utf-8")
xmlfile.close()

注:writexml方法说明如下

writexml(writer, indent="", addindent="", newl="", encoding=None),

writer是文件对象,必写参数,其余为可选参数

indent是每个tag前填充的字符,如:' ',则表示每个tag前有两个空格

addindent是每个子结点的缩近字符

newl是每个tag后填充的字符,如:'\n',则表示每个tag后面有一个回车

encoding是生成的XML信息头中的encoding属性值,在输出时minidom并不真正进行编码的处理, 如果你保存的文本内容中有汉字,则需要自已进行编码转换。

2> python 读取xml文件内容

# 解析xml
from xml.dom.minidom import parse

# 读取文件
dom=parse("test.xml")
# 获取文档元素对象
data=dom.documentElement
# 根据标签获取内容集合
stus_list=dom.getElementsByTagName("school")
# 循环遍历读取内容
for ele in stus_list:
    name= ele.getElementsByTagName('name')[0].childNodes[0].nodeValue
    type= ele.getElementsByTagName('type')[0].childNodes[0].nodeValue
    print("学校名字:",name,"","所属年级:",type)

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值