xml处理
xml的格式如下,就是通過<>節點來區別數據結構的:
<?xml version="1.0"?>
<data><country name="Liechtenstein"><rank updated="yes">2</rank><year>2008</year><gdppc>141100</gdppc><neighbor name="Austria" direction="E"/><neighbor name="Switzerland" direction="W"/></country><country name="Singapore"><rank updated="yes">5</rank><year>2011</year><gdppc>59900</gdppc><neighbor name="Malaysia" direction="N"/></country><country name="Panama"><rank updated="yes">69</rank><year>2011</year><gdppc>13600</gdppc><neighbor name="Costa Rica" direction="W"/><neighbor name="Colombia" direction="E"/></country>
</data>
xml協議在各個語言里的都 是支持的,在python中可以用以下模塊操作xml
import xml.etree.ElementTree as ETtree = 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)#只遍歷year 節點
for node in root.iter('year'):print(node.tag,node.text)
修改和刪除xml文檔內容
1 import xml.etree.ElementTree as ET 2 3 tree = ET.parse("xmltest.xml") 4 root = tree.getroot() 5 6 #修改 7 for node in root.iter('year'): 8 new_year = int(node.text) + 1 9 node.text = str(new_year) 10 node.set("updated","yes") 11 12 tree.write("xmltest.xml") 13 14 15 #刪除node 16 for country in root.findall('country'): 17 rank = int(country.find('rank').text) 18 if rank > 50: 19 root.remove(country) 20 21 tree.write('output.xml')View Code
自己創建xml文檔
import xml.etree.ElementTree as ETnew_xml = ET.Element("namelist") personinfo = ET.SubElement(new_xml,"personinfo",attrib={"enrolled":"yes"}) name = ET.SubElement(personinfo,"name") name.text = ''Mr Sun'' age = ET.SubElement(personinfo,"age",attrib={"checked":"no"}) sex = ET.SubElement(personinfo,"sex") age.text = '33' personinfo2 = ET.SubElement(new_xml,"personinfo",attrib={"enrolled":"no"}) name = ET.SubElement(personinfo2,"name") name.text = ''Mis Chen'' age = ET.SubElement(personinfo2,"age") age.text = '19'et = ET.ElementTree(new_xml) #生成文檔對象 et.write("test.xml", encoding="utf-8",xml_declaration=True)ET.dump(new_xml) #打印生成的格式
?
轉載于:https://www.cnblogs.com/Desire1998/p/11130622.html
總結
- 上一篇: 求一个好听的小说女生名字。
- 下一篇: 【php】【psr】psr2 编码风格规