Python文件之----XML
#coding=utf-8
from xml.dom import minidom
from xml.dom.minidom import Document
import xml
def writeXML(filaName="test.xml"):
doc = Document()
feature=doc.createElement("feature")
doc.appendChild(feature)
father=doc.createElement("father")
father.setAttribute('name','noun') #元素属性
text = doc.createTextNode('系统')#元素值 feature.appendChild(father)
father.appendChild(text)
son=doc.createElement("son")
text = doc.createTextNode('系统')#元素值
son.appendChild(text)
father.appendChild(son)
f = open(filaName,'w')
f.write(doc.toprettyxml(indent = ''))
f.close()
def readXML(fileName="test.xml"):
dom = xml.dom.minidom.parse(fileName) #打开xml文档
root = dom.documentElement #得到文档元素对象
bb = root.getElementsByTagName('father')
b=bb[0]
print b.nodeName
print b.nodeValue
print b.nodeType
print b.getAttribute("name")
print b.firstChild.data.encode("utf-8")
def main():
writeXML()
# readXML()
if __name__=="__main__":
main()
写入的xml文档内容:
<?xml version="1.0" ?>
<feature>
<father name="noun">
系统
<son>系统</son>
</father>
</feature>
可能写入的xml文档格式不是很好看,显示父子关系不好,可通过文本写入的方式,调整xml的格式。
对于xml的每个节点有三种属性:
nodeName为结点名字。
nodeValue是结点的值,只对文本结点有效。
nodeType是结点的类型。catalog是ELEMENT_NODE类型
第一个系统是father的标签之间的数据。
#coding=utf-8
from xml.dom import minidom
from xml.dom.minidom import Document
import xml
def writeXML(filaName="test.xml"):
doc = Document()
feature=doc.createElement("feature")
doc.appendChild(feature)
father=doc.createElement("father")
father.setAttribute('name','noun') #元素属性
text = doc.createTextNode('系统')#元素值 feature.appendChild(father)
father.appendChild(text)
son=doc.createElement("son")
text = doc.createTextNode('系统')#元素值
son.appendChild(text)
father.appendChild(son)
f = open(filaName,'w')
f.write(doc.toprettyxml(indent = ''))
f.close()
def readXML(fileName="test.xml"):
dom = xml.dom.minidom.parse(fileName) #打开xml文档
root = dom.documentElement #得到文档元素对象
bb = root.getElementsByTagName('father')
b=bb[0]
print b.nodeName
print b.nodeValue
print b.nodeType
print b.getAttribute("name")
print b.firstChild.data.encode("utf-8")
def main():
# writeXML()
readXML()
if __name__=="__main__":
main()
'''
输出:
father
None
1
noun
系统
[Finished in 0.1s]
'''
Python文件之----XML的更多相关文章
- python专题-读取xml文件
关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...
- 遍历文件 创建XML对象 方法 python解析XML文件 提取坐标计存入文件
XML文件??? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 里面的标签都是可以随心所欲的按照他的命名规则来定义的,文件名为roi.xm ...
- python读取/创建XML文件
Python中定义了很多处理XML的函数,如xml.dom,它会在处理文件之前,将根据xml文件构建的树状数据存在内存.还有xml.sax,它实现了SAX API,这个模块牺牲了便捷性,换取了速度和减 ...
- 【304】python专题-读取xml文件
参考:XML DOM 参考手册(w3school) 参考:python专题-读取xml文件 参考:请问用python怎么修改xml的节点值? 1. 读取标签内的文本(Python) 如下的 xml 文 ...
- Python:Dom生成XML文件(写XML)
http://www.ourunix.org/post/327.html 在python中解析XML文件也有Dom和Sax两种方式,这里先介绍如何是使用Dom解析XML,这一篇文章是Dom生成XML文 ...
- python解析xml文件之xml.etree.cElementTree和xml.etree.ElementTree区别和基本使用
1.解析速度:ElementTree在 Python 标准库中有两种实现.一种是纯 Python 实现例如 xml.etree.ElementTree ,另外一种是速度快一点的 xml.etree.c ...
- python批量json文件转xml文件脚本(附代码)
场景:在使用了mask rcnn跑实验后标注了大量地json格式文件,现在打算使用yolo和faster rcnn 跑实验 所以需要将之前地json文件转为xml 但是找了很久,没发现有批量处 ...
- web端自动化——Python读取txt文件、csv文件、xml文件
1.读取txt文件 txt文件是我们经常操作的文件类型,Python提供了以下几种读取txt文件的方式. 1)read(): 读取整个文件. 2)readline(): 读取一行数据. 3)readl ...
- 用 ElementTree 在 Python 中解析 XML
用 ElementTree 在 Python 中解析 XML 原文: http://eli.thegreenplace.net/2012/03/15/processing-xml-in-python- ...
随机推荐
- bzoj1036
树链剖分的基本题详细介绍在http://blog.sina.com.cn/s/blog_7a1746820100wp67.html通过树链剖分我们就可以在树上做线段树操作,完成解答 ; type no ...
- Apache HTTP Server mod_session_dbd 远程安全漏洞(CVE-2013-2249)
漏洞版本: Apache 2.4.2 漏洞描述: BUGTRAQ ID: 61379 CVE(CAN) ID: CVE-2013-2249 Apache HTTP Server是开源HTTP服务器. ...
- UVA 796 Critical Links(无向图求桥)
题目大意:给你一个网络要求这里面的桥. 输入数据: n 个点 点的编号 (与这个点相连的点的个数m) 依次是m个点的 输入到文件结束. 桥输出的时候需要排序 知识汇总: 桥: 无向连通 ...
- SendMessage和PostMessage区别以及WPARAM 和 LPARAM区别
WPARAM 和 LPARAM wParam和lParam 这两个是Win16系统遗留下来的产物,在Win16API中WndProc有两个参数:一个是WORD类型的16位整型变量:另一个是LONG类型 ...
- 阿里云ECS试用
公司在推一个大项目,感觉阿里云挺好用的,自己搞了台小机器平时可以跑着玩,而且可以做个跳板机,平时学校里的收费网直接用跳板机就可以访问了,直接写个脚本在自己机器上跑一下: #!/usr/bin/expe ...
- poj3122
题目大意:馅饼(看起来像是一个简单点的题目啊,嘎嘎,希望是的吧) 我的生日即将来临按照习惯我将准备馅饼,不是一个馅饼,我有N块馅饼,有各种各样的味道和尺寸,当我的朋友来参加我的聚会平且他们都能得到一块 ...
- angularjs简单实现$http.post(CORS)跨域及$http.post传参方式模拟jQuery.post
1.开启angularjs的CORS支持 .config(function($httpProvider) { // CORS post跨域配置 $httpProvider.defaults.useXD ...
- js中正则表达式的使用
1,作用:匹配一个字符串中的一些内容2,声明和使用: 1),构造函数 var reg=new RegExp(/表达式/) 2),字面量 var reg=/表达式/ 推荐使用 eg: var reg=/ ...
- win10在安装Oracle11g时出现了:[INS-13001]环境不满足最低要求,及未找到文件 E:\app\xxj\product\11.2.0\dbhome_1\owb\external\oc4j_applications\applications\WFMLRSVCApp.ear
win10安装Oracle11g碰到的3个问题: 1.win10在安装Oracle11g时出现了:[INS-13001]环境不满足最低要求 2.未找到文件 E:\app\xxj\product\11. ...
- SpringBoot 配置文件 application.properties(二)
mvc spring.mvc.async.request-timeout设定async请求的超时时间,以毫秒为单位,如果没有设置的话,以具体实现的超时时间为准,比如tomcat的servlet3的话是 ...