xml 模块
XML ———可扩展的标记语言
也是一种通用的数据格式
之所以用它 也是因为跨平台
XML 的语法格式:
1,任何的起始标签都必须有一个结束标签。
<> 起始标签
</>结束标签
2, 可以采用另一种简化语法,可以在一个标签中同时表示起始和结束标签。
这种语法是在大于符号之前紧跟一个斜线(/),XML解析器会将其翻译成<起始></结束>。
3,标签必须按合适的顺序进行 行行嵌套,所以结束标签必须按镜像顺序匹配起始标签。
这好比 是将起始和结束标签看作是数学中的左右括号: 在没有关闭所有的内括号之前,是不能关闭外面的括号的。
4,所有的特性都必须有值。
5,所有的特性都必须在值的周围加上双引号。
一个标签的组成部分
< 对象名 属性名称=“属性值” > 文本内容 < /对象名>
单标签的写法
< 对象名 属性名称=“属性值” />
镜像关闭顺序实例:
<a>
<b>
<c>
</c>
</b>
</a>
XML 运用实例:
import xml.etree.ElementTree as ElementTree
# 解析d.xml
tree = ElementTree.parse("d.xml")
print(tree)
# 获取根标签
rootTree = tree.getroot()
假设把左右同学的信息写成XML:
<studentinfo>
<张三>
<age>20</age>
<gender>man</gender>
</张三>
<李四>
<age>20</age>
<gender>man</gender>
</李四>
</studentinfo>
三种获取标签的方式:
一,获取所有所有人的年龄 iter函数 是用于在全文范围获取标签
for item in rootTree.iter("age"):
# 一个标签三个组成部分
print(item.tag) # 标签名称
print(item.attrib) # 标签的属性
print(item.text) # 文本内容
二,从当前标签的子 标签中找到一个名为age的标签 如果有多个 找到的是第一个
print(rootTree.find("age").attrib)
三, 从当前标签的子标签中找到所有名称为age的标签
print(rootTree.findall("age"))
总结: 与json 相比
同样的数据 json会比xml 效率更高
xml 需要根据文档结构 手动解析 而 json 直接转对像
xml 模块的更多相关文章
- oop、configparser、xml模块
本节大纲:一:在python中,有两种编程思想.1:函数式编程.2:oop.无论是函数式编程还是oop都是相辅相成.并不是说oop比函数式编程就好.各有各的优缺点.在其他语言中java等只能以面向对象 ...
- python解析xml模块封装代码
在python中解析xml文件的模块用法,以及对模块封装的方法.原文转自:http://www.jbxue.com/article/16586.html 有如下的xml文件:<?xml vers ...
- s14 第5天 时间模块 随机模块 String模块 shutil模块(文件操作) 文件压缩(zipfile和tarfile)shelve模块 XML模块 ConfigParser配置文件操作模块 hashlib散列模块 Subprocess模块(调用shell) logging模块 正则表达式模块 r字符串和转译
时间模块 time datatime time.clock(2.7) time.process_time(3.3) 测量处理器运算时间,不包括sleep时间 time.altzone 返回与UTC时间 ...
- python全栈开发-hashlib模块(数据加密)、suprocess模块、xml模块
一.hashlib模块 1.什么叫hash:hash是一种算法(3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 ...
- 【python标准库模块五】Xml模块学习
Xml模块 xml本身是一种格式规范,是一种包含了数据以及数据说明的文本格式规范.在json没有兴起之前各行各业进行数据交换的时候用的就是这个.目前在金融行业也在广泛在运用. 举个简单的例子,xml是 ...
- Python xml 模块
Python xml 模块 TOC 什么是xml? xml和json的区别 xml现今的应用 xml的解析方式 xml.etree.ElementTree SAX(xml.parsers.expat) ...
- python之xml模块
# XML 模块的操作参考链接 # http://www.cnblogs.com/yuanchenqi/articles/5732581.html
- hashlib,hmac,subprocess,configparser,xlrd,xlwt,xml模块基本功能
hashlib模块:加密 import hashlib# 基本使用cipher = hashlib.md5('需要加密的数据的二进制形式'.encode('utf-8'))print(cipher.h ...
- python configparse模块&xml模块
configparse模块 用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser. [DEFAULT] serveraliveinterval = ...
- xml模块、项目开发过程
一.XML模块 xml指的是可扩展标记语言,是一种定义电子文档结构和描述的语言,可以用来标记数据.定义数据类型. 什么时候用xml? 当需要自定义文档结构时,使用xml.在java中经常会使用xml来 ...
随机推荐
- 苹果 icloud 把我 ipad min 所有照片丢失
苹果 icloud 把我 ipad min 所有照片丢失,大概发生在 '云上贵州' 之后! 发帖纪念--- 求个说法---
- 423. Reconstruct Original Digits from English(Medium)
Given a non-empty string containing an out-of-order English representation of digits 0-9, output the ...
- Python学习第十五篇——类继承和类实例化
学习Python类时,我们明白了类的本质,以及所谓的面向对象编程思想强调的对事物本身的属性,我们对某一类事物进行描述——采用了很多方法,这些方法描述了类的属性(比如猫科动物的眼睛,四肢,是否哺乳类等等 ...
- Let's-Bug修复日志
Version 1.1 2015/11/16 修复了上传图片画质问题的Bug 修复了搜索功能的部分Bug 增加了下拉刷新的功能 修复了部分界面跳转之间的问题
- 使用junit测试
package creeper; import java.util.Scanner; public class size { private static int intercePosition = ...
- html总结:背景图片拉伸
两种方法: ⑴推荐方法 <style>body {background-image:url(images/backimage.jpg);background-size:cover;}< ...
- JavaScript对象访问器属性
对象访问器就是setter和getter,他们的作用就是 提供另外一种方法来获取或者设置对象的属性值, 并且在获取和设置的时候,可以用一定的其他操作. 看下面代码: <script> va ...
- 【学习总结】GirlsInAI ML-diary day-1-初识Python-Anaconda-Jupyter
[学习总结]GirlsInAI ML-diary 总 原博github链接-day1 初识Python-Anaconda-Jupyter: 1-下载并安装Anaconda 官网下载,按指导安装 ana ...
- asp.net mvc Dateset读取Excel数据
//处理Excel //读取Excel [NonAction] public static DataSet ExcelToDS(string Path) { //根据情况选择合适的连接字符,参考msd ...
- withRouter使用
import React from 'react'; import {Switch,NavLink,Route,Redirect,withRouter} from 'react-router-dom' ...