2015-01-13 13 views
0

我使用python的Elementtree模塊創建XML DOM,並且它似乎使用變量作爲節點。我的問題是,如果我在循環中將記錄添加到DOM,如何創建唯一的變量名稱,以便節點對於DOM是持久的。下面的示例代碼。元素樹Python中使用的變量變量

someList =[1,2,3,4,5] 
root = Element('root') 
records = SubElement(root, 'records') 

for idx, num in enumerate(someList): 
    record+idx = SubElement(records, 'record') 

希望這是有道理的。任何幫助或建議將不勝感激

回答

1

這個正確答案是對這些對象存儲在一個字典,而不是動態的他們的名字,例如:

data = dict() 
for idx, num in enumerate(someList): 
    data['record{}'.format(idx)] = SubElement(records, 'record') 

展望了一下,這也將使它很容易參考後面這些相同的對象,遍歷它們,等等。

+0

您可以詳細說明在一個字典鍵中有括號的語法嗎?我不熟悉如何使用它們。順便提一下,謝謝你的回答。 – Jacksgrin

+1

@Jacksgrin在字符串內部,大括號是傳入.format()參數的插入點。所以,'你好,格式'('世界')會產生'你好,世界'見:https://mkaz.com/2012/10/10/python-string-format/ – dylrei

+0

我可以使用這些變量變量存儲在字典中以設置子圖標或文本?例如,我現在可以這樣做: 「記錄{}格式(idx).text = record1value」 – Jacksgrin