2010-09-17 68 views
1

我刚刚学习了Javascript的原型。这是超级方便:使用$快捷方式,访问XML元素不再痛苦!Python的原型?

问题:是否有Python的Prototype-like扩展?

+0

我不确定当你说$扩展,但有一个python的XML库:http://docs.python.org/library/xml.dom.minidom.html。 – 2010-09-17 05:23:02

+1

我不想启动任何flame-war类型的场景,但JQuery是一个类似的库,拥有更大的用户群。 – JKirchartz 2010-09-17 05:33:09

回答

1

Python有lxml它有xpath方法,其中你可以使用xpath表达式来选择元素。据我所知,美元的原型搜索并返回具有特定ID的元素,在这种情况下,可以在XPath中被翻译成*[@id=<someid>]像这样:

>>> import lxml.etree 
>>> tree = lxml.etree.XML("<root><a id='1'/><b id='2'/></root>") 
>>> tree.xpath("*[@id=1]") 
[<Element a at c3bc30>] 
>>> lxml.etree.tostring(tree.xpath("*[@id=1]")[0]) 
'<a id="1"/>' 

我认为Python标准库包含了一个子集的支持ElementTree中的xpath也是如此,所以如果你不想安装lxml(不包含在stdlib中),你也许可以实现这一点......