Python学习笔记399

简介: Python XML 解析

Python 解析XML实例

实例

#!/usr/bin/python# -*- coding: UTF-8 -*-importxml.saxclassMovieHandler(xml.sax.ContentHandler):    def__init__(self):       self.CurrentData = ""      self.type = ""      self.format = ""      self.year = ""      self.rating = ""      self.stars = ""      self.description = ""     # 元素开始事件处理   defstartElement(self, tag, attributes):       self.CurrentData = tag      iftag == "movie":          print"*****Movie*****"         title = attributes["title"]         print"Title:", title     # 元素结束事件处理   defendElement(self, tag):       ifself.CurrentData == "type":          print"Type:", self.type      elifself.CurrentData == "format":          print"Format:", self.format      elifself.CurrentData == "year":          print"Year:", self.year      elifself.CurrentData == "rating":          print"Rating:", self.rating      elifself.CurrentData == "stars":          print"Stars:", self.stars      elifself.CurrentData == "description":          print"Description:", self.description      self.CurrentData = ""     # 内容事件处理   defcharacters(self, content):       ifself.CurrentData == "type":          self.type = content      elifself.CurrentData == "format":          self.format = content      elifself.CurrentData == "year":          self.year = content      elifself.CurrentData == "rating":          self.rating = content      elifself.CurrentData == "stars":          self.stars = content      elifself.CurrentData == "description":          self.description = content  if(__name__ == "__main__"):        # 创建一个 XMLReader   parser = xml.sax.make_parser()   # turn off namepsaces   parser.setFeature(xml.sax.handler.feature_namespaces, 0)     # 重写 ContextHandler   Handler = MovieHandler()   parser.setContentHandler(Handler)       parser.parse("movies.xml")

以上代码执行结果如下:

*****Movie*****

Title:EnemyBehind

Type:War,Thriller

Format: DVD

Year:2003

Rating: PG

Stars:10

Description:Talk about a US-Japan war

*****Movie*****

Title:Transformers

Type:Anime,ScienceFiction

Format: DVD

Year:1989

Rating: R

Stars:8

Description: A schientific fiction

*****Movie*****

Title:Trigun

Type:Anime,Action

Format: DVD

Rating: PG

Stars:10

Description:Vash the Stampede!

*****Movie*****

Title:Ishtar

Type:Comedy

Format: VHS

Rating: PG

Stars:2

Description:Viewable boredom

相关文章
|
3天前
|
存储 C语言 Python
【Python】学习笔记day3
【Python】学习笔记day3
28 1
|
3天前
|
SQL 分布式计算 大数据
Python+大数据学习笔记(一)
Python+大数据学习笔记(一)
46 0
|
3天前
|
分布式计算 Python
Python函数式编程学习笔记
高阶函数是能接收另一个函数作为参数的函数,如Python的map()、reduce()和filter()。map()将传入的函数应用到序列每个元素并返回迭代器,如将整数列表转换为字符串列表。reduce()对序列进行累积计算,例如求和。filter()根据给定函数返回的真值保留或丢弃序列元素,常用于筛选。sorted()函数支持自定义排序,如按绝对值或ASCII值排序。此外,还包括返回函数、匿名函数(lambda)、装饰器(用于动态增强函数功能)和偏函数(partial),用于固定函数部分参数,简化调用。
9 1
|
3天前
|
前端开发 安全 JavaScript
Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面
Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面
|
3天前
|
Python
基于Django的Python应用—学习笔记—功能完善
基于Django的Python应用—学习笔记—功能完善
|
3天前
|
存储 数据库 数据安全/隐私保护
基于Django的Python应用——学习笔记
基于Django的Python应用——学习笔记
|
3天前
|
存储 Java 程序员
【Python】学习笔记day2
【Python】学习笔记day2
27 1
|
3天前
|
存储 C语言 芯片
【Python】学习笔记day1
【Python】学习笔记day1
34 1
|
3天前
|
算法 搜索推荐 测试技术
python排序算法及优化学习笔记1
python实现的简单的排序算法,以及算法优化,学习笔记1
35 1
|
7月前
|
jenkins 持续交付 开发工具
Python学习笔记_Devops_Day05
Python学习笔记_Devops_Day05