如何获取XML中city为Paris的pdv元素的latitude属性?
获取city为Paris的pdv元素的latitude属性
你可以通过两种方式实现需求:
方法一:直接用XPath提取属性值
直接通过XPath语法筛选目标节点并提取属性,代码更简洁:
# 提取所有符合条件的latitude属性值 latitudes = tree.xpath("pdv[city='Paris']/@latitude") for lat in latitudes: print(lat)
pdv[city='Paris'] 会筛选出所有包含<city>Paris</city>子元素的<pdv>节点,/@latitude 则直接提取这些节点的latitude属性值。
方法二:先获取pdv元素再提取属性
如果后续还需要获取该节点的其他属性(比如id、longitude),可以先拿到节点对象再操作:
# 获取所有符合条件的pdv元素 pdv_nodes = tree.xpath("pdv[city='Paris']") for pdv in pdv_nodes: # 提取latitude属性 latitude = pdv.get('latitude') print(latitude)
这里用节点对象的get()方法获取指定属性,灵活度更高。
内容的提问来源于stack exchange,提问作者Croco
相关产品推荐
相关产品推荐

