2016-02-15 63 views
0

我在Python中使用Minidom操作XML文檔,並試圖創建幾個相同元素的相似副本。爲了這樣做,我希望遍歷原始的屬性,每次將它們設置在克隆中。這是做這件事的最好方法嗎?如何使用Minidom複製XML屬性?

所以我的實現,因爲它代表的是:

attributes = original.attributes 
for ii in range(attributes.length): 
    item = attributes.item(ii) 
    clone.setAttribute(item.name, item.value) 

我這個問題是它的笨重 - 肯定有,我可以用它來獲取所有從minidom命名元素的屬性的迭代? original.attributes在上面的代碼片段中返回一個NamedNodeMap對象,並且爲了獲得上面要做的屬性,這看起來似乎不是pythonic ...

回答

0

最後,我決定要稍微更優雅解決方案:

for key, val in original.attributes.items(): clone.setAttribute(key, val)