日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python操作xml的兩種方法

說明

1、DOM會將整個XML讀入內(nèi)存,解析為樹,所以占用內(nèi)存大,解析慢。

它的優(yōu)點(diǎn)是可以隨意遍歷樹的節(jié)點(diǎn)。

2、SAX是一種流模式,邊讀邊分析,占用內(nèi)存小,分析快,缺點(diǎn)是需要自己處理事件。

一般情況下,SAX優(yōu)先考慮,因?yàn)镈OM占用內(nèi)存太多。

實(shí)例

from xml.parsers.expat import ParserCreate
 
class DefaultSaxHandler(object):
    def start_element(self, name, attrs):
        print('sax:start_element: %s, attrs: %s' % (name, str(attrs)))
 
    def end_element(self, name):
        print('sax:end_element: %s' % name)
 
    def char_data(self, text):
        print('sax:char_data: %s' % text)
 
xml = r'''
        
  1. Python
  2.     
  3. Ruby
'''   handler = DefaultSaxHandler() parser = ParserCreate() parser.StartElementHandler = handler.start_element parser.EndElementHandler = handler.end_element parser.CharacterDataHandler = handler.char_data parser.Parse(xml)   //測試結(jié)果 sax:start_element: ol, attrs: {} sax:char_data:   sax:char_data:      sax:start_element: li, attrs: {} sax:start_element: a, attrs: {'href': '/python'} sax:char_data: Python sax:end_element: a sax:end_element: li sax:char_data:   sax:char_data:      sax:start_element: li, attrs: {} sax:start_element: a, attrs: {'href': '/ruby'} sax:char_data: Ruby sax:end_element: a sax:end_element: li sax:char_data:   sax:end_element: ol

以上就是python操作xml的兩種方法,希望對大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)python教程

本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。


新聞名稱:創(chuàng)新互聯(lián)Python教程:python操作xml的兩種方法
文章鏈接:http://www.5511xx.com/article/dhhhosg.html