2010-09-17 19 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中),你也許可以實現這一點......