擅长:python、mysql、java
<p>代码的问题是调用<em>find</em>,它只查找
具有给定名称的元素的第一次出现。
您应该使用<em>findall</em>和循环</p>
<p>另一个(可选)更正是使用较短的名称</p>
<p>因此,请更改您的代码,例如:</p>
<pre><code>for dr in root.iter('Donnees_Releve'):
if dr.find('Classe_Temporelle_Distributeur') is None:
for ct in dr.findall('Classe_Temporelle'):
wrk = copy.deepcopy(ct)
wrk.tag = 'Classe_Temporelle_Distributeur'
dr.append(wrk)
</code></pre>
<p>恐怕另一个解决方案会复制现有的<em>Classe\u Temporelle</em>
无论是否:
元素存在(在这种情况下,不应复制)</p>