FreeTstar

loving Freedom + + loving Linux

  • 首页
  • Archive
  • 关于
  • 杂七杂八
  • 留言板
Twitter Sina RSS

python学习之os.path模块&&elementtree处理xml文件

发布于 2011年04月25日 由 freetstar
10 条评论发表评论
学习中,肯定有不对的地方!
python中os.path常用模块
os.path.sep:路径分隔符      linux下就用这个了’/’
os.path.altsep: 根目录
os.path.curdir:当前目录
os.path.pardir:父目录
os.path.abspath(path):绝对路径
os.path.join():       常用来链接路径
os.path.split(path):      把path分为目录和文件两个部分,以列表返回
见图:
python中用ElementTree来读写处理xml文档
添加xml.etree.ElementTree模块
import xml.etree.ElementTree as ET
两种解析xml方式
1解析xml文档
ET.parse(‘test.xml’)
2 解析xml字符串
ET.fromstring(string)
得到xml的root元素
tree=ET.parse(‘test.xml’)
root=tree.getroot()
xml中元素(Element)属性
tree=ET.parse(‘test.xml’)
root=tree.getroot()
#root是一个特殊的元素(Element)
#元素的tag
root.tag
#元素的text
root.text
#元素的children类似于列表
root[0]表示root下的第一个子元素,root[1]表示root的第二个子元素,依次类推。。。
#元素的属性.attrib是一个字典。也就是用唯一的键,和其对应的值
root[o].attrib
xml中创建子节点
#parent即父节点,tag则创建元素的tag
ET.SubElement(parent,tag)
xml中查找节点
方法为:find,findall
xml写到文件中
tree=ET.parse(‘test.xml’)
tree.write(‘test2.xml’)
Element中有3个对象(不知道这样说准确否)
第一个是xml.etree.ElementTree本身,为了书写方便一般直接import xml.etree.ElementTre as ET
然后ET.function()来使用
第二个是ElementTree对象,获取方法
tree=ET.parse(文件或者xml字符串),
tree即ElementTree对象,常用的方法有
getroot() :获取根元素
find(match) :找到顶层的第一个和match配对的元素
findall(match): 找到所有匹配的子元素
第三个是Element对象,即元素,也是最重要的
ElementTree调用函数的返回值通常是Element元素,其常用的方法有
tag: 获取tag值
text :获取元素的文本内容
attrib :获取元素的属性,通常是字典数据类型,上边提到过,如{“ID”:”07509876″}
getchildren() :获取元素的子元素
更多的资料查看官方文档:here
分类:PROGRAM
学习Python的利器-IPython Part I
Geekcook博客营销活动

10 则回应给 “python学习之os.path模块&&elementtree处理xml文件”

  1. alswl UNITED STATES Mozilla Firefox Linux 说道:
    2012年01月5日 5:15 下午

    请问用的什么Terminal Emulator?Tilda?

    [回复]

    freetstar CHINA Mozilla Firefox Linux 回复:
    一月 6th, 2012 at 11:43 上午

    @alswl, gnome-terminal…

    [回复]

  2. Leyond CHINA Mozilla Firefox Windows 说道:
    2011年04月28日 8:48 上午

    呵呵 学的比较详细啊,我都在休息 太累了最近

    [回复]

    freetstar CHINA Google Chrome Linux 回复:
    四月 28th, 2011 at 10:55 上午

    python学习来很号入手^^。多休息

    [回复]

  3. Mucid CHINA Mozilla Firefox Linux 说道:
    2011年04月26日 5:21 下午

    还在学PHP呢……

    [回复]

    freetstar CHINA Mozilla Firefox Windows 回复:
    四月 26th, 2011 at 5:56 下午

    @Mucid, 感觉咋样

    [回复]

    Mucid CHINA Mozilla Firefox Linux 回复:
    四月 26th, 2011 at 6:25 下午

    @freetstar, 很好很强大 :twisted:

    [回复]

    freetstar CHINA Mozilla Firefox Windows 回复:
    四月 26th, 2011 at 6:46 下午

    @Mucid, 是时候把python学到中级了,有空有用了就学习php

    [回复]

  4. 奶牛 CHINA Mozilla Firefox Windows 说道:
    2011年04月26日 10:52 上午

    terminal的半透明效果挺棒滴,嘎嘎~~~

    [回复]

    freetstar CHINA Google Chrome Linux 回复:
    四月 26th, 2011 at 11:16 上午

    @奶牛, 实际上显卡驱动没装好。。

    [回复]

发表评论 取消回复

电子邮件地址不会被公开。 必填项已用 * 标注

*

*


疑问 开心 悲伤 邪恶 惊叹 微笑 脸红 笑 惊讶 惊奇 迷惑 酷 憨笑 生气 阴险 转眼球 眨眼 主意 箭头 中立 哭 大笑

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture.
Anti-spam image

点击取消回复
第 1 页,共 1 页1
  • 欢迎订阅

  • Github

  • 近期评论

    • freetstar CHINA Mozilla Firefox Linux 发表在《留言板》
    • _Fly CHINA Google Chrome Linux 发表在《使用e4rat加速你的linux启动速度(ext4文件系统专用)》
    • walfred Mozilla Firefox Windows 发表在《留言板》
    • freetstar CHINA Mozilla Firefox Windows 发表在《用landslide创建html5 slide》
  • Spread Firefox Affiliate Button
  • 我的豆瓣

  • 链接表

    • 51开源社区
    • Adam's
    • delectate's blog
    • Don's
    • fl
    • ghostunix
    • Jasey Wang
    • Jerry's Blog
    • Moolight@Ericyue
    • OSMSG
    • panda
    • Pity is the Bomp
    • PT ubuntu
    • Tao Zhu
    • ubuntuhome
    • WOW!ubuntu
    • zhangzhfang
    • 丕字的blog
    • 傻东の学习笔记
    • 奶牛的blog
    • 孤风颠影
    • 弯柚博客
    • 熊猫党军委主席
    • 靖 轩
    • 马力哥
    • 黑孩儿
  • 我的支付宝

  • 功能

    • 登录
    • 文章 RSS
    • 评论 RSS
    • WordPress.org
© FreeTstar. WordPress 强力驱动 | Nest Theme by YChong