xml

import xml.etree.ElementTree as ET
tree =ET.parse('xml_lesson')
root = tree.getroot()
print(root.tag)

获得根的名字
<data>
  <country name=‘china’> country 为标签那么为属性
    <neighbor name='' direction=''>neighbor 为标签direction为属性

</data>
import xml.etree.ElementTree as ET


tree =ET.parse('xml_lesson')
root = tree.getroot()
print(root.tag)

for i in root:
    print(i)#i为地址 指向一个对象
    print(i.tag)#打印出的为标签名字
    print(i.attrib)#打印一个标签的属性 以字典方式显示
    for j in i:
        print(j.tag)#打印节点下一级标签名字
        print(i.text)  # text 为标签包含内容<>text</>


#遍历节点查看
for node in root.iter('year'):
    print(node.tag,node.text)
    #roor 为总结点  便利文档找以year为标签的tag 和 text

#修改
#更改text
for node in root.iter('year'):
    new_year = int(node.text) + 1
    node.text = str(new_year)
    #更改属性名和属性(updated和yes可以换成其他)
    node.set('updated','yes')
#还需要写入 写入名称可以与原名相同也可以不同
#写原名就从新覆盖原内容
tree.write('abc.xml')
#删除node
#find 和 findall招标签 findall 可以找多个
for country in root.findall('country'):
    rank = int(country.find('rank').text)
    if rank >50:
        root.remve(country)



#自己如何创建一个xml数据
import xml.etree.ElementTree as ET
#创建一个总结点
new_xml =ET.Element('namelist')
#<namelist>
#   <name enrolled='yes'>33</name>
#
# </namelist>
#创建子标签 1操作对象 2插入name标签 3,name 标签属性
name=ET.SubElement(new_xml,'name',attrib={('enrolled'):'yes'})
name.text = 33


et = ET.ElementTree(new_xml) #生成新的文档对象
et.write('test.xml',encoding='utf-8',xml_declaration=True)
ET.dump(new_xml)#打印生成的格式

  

原文地址:https://www.cnblogs.com/qj696/p/10725234.html