国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python xml解析實例詳解

2019-11-25 16:29:43
字體:
供稿:網(wǎng)友

python xml解析

first.xml 

<info> <person > <id>1</id> <name>fsy</name> <age >24</age> </person> <person> <id>2</id> <name>jianjian</name> <age>24</age> </person> <count id ='1'>1000</count> </info> 

from xml.etree import ElementTree as etree 

讀入

def read_xml(file): # parse()函數(shù)會返回一個能代表整篇文檔的對象。這不是根元素。要獲得根元素的引用可以調(diào)用getroot()方法。 tree = etree.parse(file) root = tree.getroot() return root 

得到信息

def print_node(node): '''''打印結(jié)點基本信息''' print("node.tag:%s" % node.tag) print("node.attrib:%s"%node.attrib) print( "node.text:%s" % node.text) 

搜索:

find_all >>> root = read_xml ('first.xml')   >>> res = root.findall("person") [<Element 'person' at 0x00000000033388B8>, <Element 'person' at 0x0000000003413D68>]  注意:findall只查詢直接的子節(jié)點 >>> r1 = root.findall("id") >>> r1 [] >>> r =tree.findall(".//id") >>> for e in r:   print( e,e.text)   <Element 'id' at 0x00000000034279F8> 1 <Element 'id' at 0x0000000003427B38> 2 

find:

#find()方法用來返回第一個匹配到的元素。當(dāng)我們認為只會有一個匹配,或者有多個匹配但我們只關(guān)心第一個的時候,這個方法是很有用的。 >>> res[0].find("id") <Element 'id' at 0x0000000003413CC8> >>> print_node(res[0].find("id")) node.tag:id node.attrib:{} node.text:1 

find查找失?。?br />

使用find要注意在布爾上下文中,如果ElementTree元素對象不包含子元素,其值則會被認為是False(即如果len(element)等于0)。這就意味著if element.find('...')并非在測試是否find()方法找到了匹配項;這條語句是在測試匹配到的元素是否包含子元素。想要測試find()方法是否返回了一個元素,則需使用if element.find('...') is not None。

>>> bk = res[0].find("no") >>> bk >>> type(bk) <class 'NoneType'> >>> res[0].find("id") <Element 'id' at 0x0000000003413CC8> >>> if res[0].find("id"):     print("find")   else:     print("not find") not find >>> if res[0].find("id") is not None:     print("find")   else:     print("not find") find 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 美姑县| 普定县| 江阴市| 惠安县| 合江县| 诸暨市| 平利县| 英吉沙县| 锡林浩特市| 新化县| 裕民县| 江城| 密云县| 六安市| 治多县| 三原县| 衡山县| 调兵山市| 辉县市| 黄陵县| 衡东县| 图木舒克市| 延安市| 河东区| 永丰县| 茂名市| 尼木县| 石景山区| 洪泽县| 林口县| 肇源县| 阿巴嘎旗| 德惠市| 铜鼓县| 祁门县| 盘锦市| 洪泽县| 曲阳县| 通化市| 繁峙县| 内丘县|