3

値だけでなく、既存の要素の属性を変更したいだけでなく、キーも追加/削除/変更したい。例えば、

<frame_geometry name="border" has_title="false"/>  

追加したい:rounded_top_left = "5"など...
作成後に要素属性のキーを変更することは可能ですか?

そうでない場合は、回避策を使用できます。たとえば、すべての要素の属性を一時的な辞書に保存し、その+/-から新しい要素を作成します。
ただし、変更する必要のある要素にはいくつかのサブ要素もあるため、このソリューションは望ましくありません...

4

2 に答える 2

4

私はそれを考え出した。とても簡単。
新しい属性を追加します:

element.attrib['newkey'] = 'newvalue'  

既存の要素に属性を追加します。
既存の属性を削除するには:

del element.attrib['unwanted_key']  

既存のキーを変更する限り、それが可能かどうかはまだわかりませんが、追加/削除を使用すると、簡単に回避できます。

于 2011-04-04T15:13:00.687 に答える
-1

.renameスタイル関数に期待していた要素を反復処理することで成功しました

 For element in XMLData:
     if element.tag = Searching:
         element.tag = "NewTag"
         #Now its element.NewTag
于 2013-05-23T00:30:16.140 に答える