首页 > 其他 > 详细

构建XML文件的几种方式

时间:2021-04-25 10:27:49      阅读:9      评论:0      收藏:0      [点我收藏+]

第一种:

from xml.etree import ElementTree as ET

# 创建根标签
root = ET.Element("home")

# 创建节点大儿子
son1 = ET.Element(son, {name: 儿1})
# 创建小儿子
son2 = ET.Element(son, {"name": 儿2})

# 在大儿子中创建两个孙子
grandson1 = ET.Element(grandson, {name: 儿11})
grandson2 = ET.Element(grandson, {name: 儿12})
son1.append(grandson1)
son1.append(grandson2)

# 把儿子添加到根节点中
root.append(son1)
root.append(son2)

tree = ET.ElementTree(root)
tree.write(oooo.xml, encoding=utf-8, short_empty_elements=False)


‘‘‘
结果为
<home>
    <son name="儿1">
        <grandson name="儿11"></grandson>
        <grandson name="儿12"></grandson>
    </son>
    <son name="儿2"></son>
</home>

‘‘‘

第二种:

from xml.etree import ElementTree as ET

# 创建根节点
root = ET.Element("famliy")


# 创建大儿子
son1 = root.makeelement(son, {name: 儿1})
# 创建小儿子
son2 = root.makeelement(son, {"name": 儿2})

# 在大儿子中创建两个孙子
grandson1 = son1.makeelement(grandson, {name: 儿11})
grandson2 = son1.makeelement(grandson, {name: 儿12})

son1.append(grandson1)
son1.append(grandson2)


# 把儿子添加到根节点中
root.append(son1)
root.append(son2)

tree = ET.ElementTree(root)
tree.write(oooo.xml,encoding=utf-8)

‘‘‘
结果为:
<famliy>
    <son name="儿1">
        <grandson name="儿11"></grandson>
        <grandson name="儿12"></grandson>
    </son>
    <son name="儿2"></son>
</famliy>

‘‘‘

第三种(推荐):

from xml.etree import ElementTree as ET


# 创建根节点
root = ET.Element("famliy")


# 创建节点大儿子
son1 = ET.SubElement(root, "son", attrib={name: 儿1})
# 创建小儿子
son2 = ET.SubElement(root, "son", attrib={"name": "儿2"})

# 在大儿子中创建一个孙子
grandson1 = ET.SubElement(son1, "age", attrib={name: 儿11})
grandson1.text = 孙子


et = ET.ElementTree(root)  #生成文档对象
et.write("test.xml", encoding="utf-8")

‘‘‘
结果为:
<famliy>
  <son name="儿1">
      <age name="儿11">孙子</age>
    </son>
  <son name="儿2"></son>
</famliy>

‘‘‘

补充:

关于微信公众号开发中遇到的xml文件含有<![CDATA[]]格式的xml文件的构建

from xml.etree import ElementTree as ET

# 创建根节点
root = ET.Element("user")
root.text = "<![CDATA[你好呀]]"

et = ET.ElementTree(root)  # 生成文档对象
et.write("test.xml", encoding="utf-8")

‘‘‘
<user><![CDATA[你好呀]]</user>
‘‘‘

 

构建XML文件的几种方式

原文:https://www.cnblogs.com/wuzpeng/p/14698515.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!