python操作xml_python操作xml文件问题

展开全部

使用Python操作处理(读写等)XML文件,通过简单的例子了解62616964757a686964616fe58685e5aeb931333337396232各个函数的使用方法,代码如下:from xml.etree.ElementTree import ElementTree

from xml.etree.ElementTree import Element

from xml.etree.ElementTree import SubElement

from xml.etree.ElementTree import dump

from xml.etree.ElementTree import Comment

from xml.etree.ElementTree import tostring

'''

Potato Smasher

Smash Potatoes like never before.

'''

## Writing the content to xml document(编写XML文档内容)

book = ElementTree()

purchaseorder = Element('PurchaseOrder')

book._setroot(purchaseorder)

SubElement(purchaseorder,  'account', {'refnum' : "2390094"})

item = Element("item", {'sku' : '33-993933', 'qty' : '4'})

purchaseorder.append(item)

print item.items()       # [('sku', '33-993933'), ('qty', '4')]

print item.attrib        # {'sku': '33-993933', 'qty': '4'}

print item.get('sku')    # 33-993933

SubElement(item, 'name').text = "Potato Smasher"

SubElement(item, 'description').text = "Smash Potatoes like never before."

#book.write('book.xml',"utf-8")

#print tostring(purchaseorder)

#import sys

#book.write(sys.stdout)

#dump(book)

## Displaying the content of the xml document(显示XML文档内容)

print purchaseorder.find('account')

print purchaseorder.find('account').get('refnum')

print purchaseorder.findall('account')[0].get('refnum')

print purchaseorder.find('item/name')

print purchaseorder.find('item/name').text

## How to use ElementTree([element,] [file])

## 1. From standard XML element, it becomes root element

print ElementTree(item).getroot().find('name').text

## 2. From XML file

print ElementTree(file='book.xml').getroot().find('item/description').text

## Create an iterator

for element in purchaseorder.getiterator():

print element.tag

## Get pretty look

def indent(elem, level=0):

i = "\n" + level*"  "

if len(elem):

if not elem.text or not elem.text.strip():

elem.text = i + "  "

for e in elem:

indent(e, level+1)

if not e.tail or not e.tail.strip():

e.tail = i

if level and (not elem.tail or not elem.tail.strip()):

elem.tail = i

return elem

if __name__=="__main__":

dump(indent(purchaseorder))

book.write('book.xml',"utf-8")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值