python XML模块

import xml.etree.ElementTree as ET

# tree = ET.parse("xmltest.xml")#操作的文件
# root = tree.getroot()#获取一个内存地址
# print(root.tag)#标签名
#
# # 遍历xml文档
# for child in root:
# print(child.tag, child.attrib)
# for i in child:
# print(i.tag, i.text,i.attrib)#获取头,内容,属性
#
# # 只遍历year 节点
# for node in root.iter('year'):
# print(node.tag, node.text)


# tree = ET.parse("xmltest.xml")
# root = tree.getroot()

# 修改
# for node in root.iter('year'):
# new_year = int(node.text) + 1
# node.text = str(new_year)
# node.set("updated_test", "test")#加属性
#
# tree.write("xmltest.xml")

# # 删除node
# for country in root.findall('country'):
# rank = int(country.find('rank').text)
# if rank > 50:
# root.remove(country)
#
# tree.write('output.xml')

#自己创建xml文档
new_xml = ET.Element("namelist")#根节点
personinfo = ET.SubElement(new_xml, "personinfo", attrib={"enrolled": "yes"})#根的子节点
name = ET.SubElement(personinfo,"name")
name.text= 'testing'
age = ET.SubElement(personinfo, "age", attrib={"checked": "no"})#name的子节点
sex = ET.SubElement(personinfo, "sex")#name的子节点
age.text = '18'
sex.text = '33' #sex赋值
personinfo2 = ET.SubElement(new_xml, "personinfo2", attrib={"enrolled": "no"})
name2 = ET.SubElement(personinfo2,"name2")
name2.text = 'hello'
age = ET.SubElement(personinfo2, "age")
age.text = '19'

et = ET.ElementTree(new_xml) # 生成文档对象
et.write("test2.xml", encoding="utf-8", xml_declaration=True)

ET.dump(new_xml) # 打印生成的格式
posted @ 2020-06-14 22:01  安好_世界  阅读(176)  评论(0编辑  收藏  举报