基于python标准库对XML文件的保存和加载

本文介绍如何使用Python内置的xml.dom模块将数据保存到XML文件,并通过DOM和SAX两种方式解析XML文件。示例展示了利用DOM保存电影记录到XML,以及用DOM和SAX导入并解析XML内容。
摘要由CSDN通过智能技术生成

上文对基于PyQt对XML文件进行保存和加载进行说明,本文则是通过python标准库xml dom讲数据写入到xml文件然后解析,解析XML文件则通过两种方式:DOM和SAX。两者的区别是前者适合编辑文档结构,后者采用递归工作方式,适用于XML文档的搜索和处理。

下例通过XML DOM将不同类型的数据保存为XML格式如下:

<MOVIES VERSION="1.0"><MOVIE YEAR="1989" MINUTES="45" ACQUIRED="2017-01-15"><TITLE>God save world</TITLE><NOTES>
HELLO WORLD
</NOTES></MOVIE></MOVIES>

然后通过python标准库,DOM和SAX方式讲内容解析出来。

from xml.sax import *
from xml.dom.minidom import Document,parse
import xml.dom.minidom
import os
import datetime

class Movie(object):
    UNKNOWNYEAR = 1890
    UNKNOWNMINUTES = 0
    def __init__(self, title=None, year=UNKNOWNYEAR,
                 minutes=UNKNOWNMINUTES, acquired=None, notes=None):
        self.title = title
        self.year = year
        self.minutes = minutes
        self.acquired = (acquired if acquired is not None
                                  else datetime.date.today())
        self.notes = notes
class MovieContainer(object):

    def __init__(self,fname,movies):
        self.__fname = fname
        self.__movies = movies
    def 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值