節點是以字典的形式攜帶屬性的spa
建立帶屬性節點rest
root = etree.Element("root", interesting="totally") etree.tostring(root) #輸出:b'<root interesting="totally"/>' print(root.get("interesting")) #輸出:totally print(root.get("hello")) #輸出:none
節點屬性賦值code
root.set("hello", "Huhu") print(root.get("hello")) #輸出:Huhu etree.tostring(root) #輸出:b'<root interesting="totally" hello="Huhu"/>'
獲取節點全部屬性並排序輸出xml
sorted(root.keys()) #輸出:['hello', 'interesting'] for name, value in sorted(root.items()): print('%s = %r' % (name, value)) ''' 輸出: hello = 'Huhu' interesting = 'totally' '''
獲取節點屬性集合(字典形式)對象
attributes = root.attrib print(attributes["interesting"]) #輸出:totally print(attributes.get("no-such-attribute")) #輸出:none attributes["hello"] = "Guten Tag" print(attributes["hello"]) #輸出:Guten Tag print(root.get("hello")) #輸出:Guten Tag ''' 注意attrib是一個由元素自己支持的相似dict的對象。 這意味着對元素的任何更改都反映在attrib中,反之亦然。 這還意味着,只要XML樹的某個元素的attrib在使用,它就在內存中保持活動狀態。 要獲取不依賴於xml樹的屬性的獨立快照,請將其複製到dict中 ''' d = dict(root.attrib) sorted(d.items()) #[('hello', 'Guten Tag'), ('interesting', 'totally')]
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------blog