python写xml文件的操作实例

265次阅读  |  发布于5年以前

本文实例讲述了python写xml文件的操作的方法,分享给大家供大家参考。具体方法如下:

要生成的xml文件格式如下:


    <?xml version="1.0" ?> 
    <!--Simple xml document__chapter 8--> 
    <book> 
      <title> 
        sample xml thing 
      </title> 
      <author> 
        <name> 
          <first> 
            ma 
          </first> 
          <last> 
            xiaoju 
          </last> 
        </name> 
        <affiliation> 
          Springs Widgets, Inc. 
        </affiliation> 
      </author> 
      <chapter number="1"> 
        <title> 
          First 
        </title> 
        <para> 
          I think widgets are greate.You should buy lots of them forom 
          <company> 
            Spirngy Widgts, Inc 
          </company> 
        </para> 
      </chapter> 
    </book> 

Python实现代码如下:


    from xml.dom import minidom, Node 

    doc = minidom.Document() 

    doc.appendChild(doc.createComment("Simple xml document__chapter 8")) 

    #generate the book 
    book = doc.createElement('book') 
    doc.appendChild(book) 

    #the title 
    title = doc.createElement('title') 
    title.appendChild(doc.createTextNode("sample xml thing")) 
    book.appendChild(title) 

    #the author section 
    author = doc.createElement("author") 
    book.appendChild(author) 
    name = doc.createElement('name') 
    author.appendChild(name) 
    firstname = doc.createElement('first') 
    firstname.appendChild(doc.createTextNode("ma")) 
    name.appendChild(firstname) 
    lastname = doc.createElement('last') 
    name.appendChild(lastname) 
    lastname.appendChild(doc.createTextNode("xiaoju")) 

    affiliation = doc.createElement("affiliation") 
    affiliation.appendChild(doc.createTextNode("Springs Widgets, Inc.")) 
    author.appendChild(affiliation) 

    #The chapter 
    chapter = doc.createElement('chapter') 
    chapter.setAttribute('number', '1') 
    title = doc.createElement('title') 
    title.appendChild(doc.createTextNode("First")) 
    chapter.appendChild(title) 
    book.appendChild(chapter) 

    para = doc.createElement('para') 
    para.appendChild(doc.createTextNode("I think widgets are greate.\ 
    You should buy lots of them forom")) 
    company = doc.createElement('company') 
    company.appendChild(doc.createTextNode("Spirngy Widgts, Inc")) 
    para.appendChild(company) 
    chapter.appendChild(para) 

    print doc.toprettyxml() 

希望本文所述对大家的Python程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8