[英]How to interpret “extra” in Python documentation
在文檔中,給出了以下行來描述如何啟動類對象
class xml.etree.ElementTree.Element(tag, attrib={}, **extra)
在那之下,有一條線說
extra包含作為關鍵字參數給出的其他屬性。
我一直在試驗,但我不確定這究竟是什么意思。 例如,我想添加text屬性,但它無法正常工作。 我的論點似乎是轉向attrib屬性。
這是示例代碼,以突出我的問題
>>> import xml.etree.ElementTree as ET
>>> tree = ET.Element('Level 0',text = 'test text')
>>> tree.attrib #This should be empty
{'text': 'test text'}
>>> tree.text #test text should be here
>>>
以下是文檔的鏈接以供參考。
http://docs.python.org/3.3/library/xml.etree.elementtree.html#element-objects
這是完全正確的。 XML標記屬性存儲在Element.attrib
結構中。
然后,當您將ElementTree結構輸出到XML時, .attrib
值將用於生成XML屬性:
>>> elem = ET.Element('Level0', text='test text')
>>> ET.tostring(elem)
'<Level0 text="test text" />'
函數簽名中的**keywords
語法捕獲函數調用的其他關鍵字參數; 您可以傳入顯式字典,也可以使用關鍵字參數來定義屬性。 請參閱功能定義文檔 。
因此,以下兩種形式是等效的(對於ElementTree.Element()
調用):
ET.Element('Level0', text='test text')
ET.Element('Level0', {'text': 'test text'})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.