我有以下 XML:<foo><bar x="0"/><bar x="1"/></foo>我事先知道这里会有两个子元素,一个的 x 为 0,但另一个的 x 为我不知道的。我想选择属性值不为 0 的子元素。我想你会这样做:foo.find("bar[@x!='0']")但这不会返回任何东西。根据以下链接,我尝试了以下操作,但出现错误。foo.find("bar[not(@x='0')]")
1 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
您是否尝试用 .xpath() 替换 .find 问题中的链接使用 xpath。
from lxml import etree
path=r"C:\foo.xml"
tree = etree.parse(path)
print tree.xpath('bar[not(@x="0")]')
添加回答
举报
0/150
提交
取消