嗨,我有一个像这样的 xml 我想更新标签之间的值。
<ABC>
<CDF ExcludeDefaults="false" MaxServers="-1">
<action type="update">
<prime>f3f09ff2a2244343a0b6b30dbb79a56b</prime>
</action>
</CDF>
</ABC>
我在一个名为 close 的变量中有一些值。
关闭 = 'gdai55ff2a2244343a0b6b30dbb745rtdf' 。我想用分配给 close 的值更新 prime 标签。 更新后我希望我的 xml 采用以下格式
<ABC>
<CDF ExcludeDefaults="false" MaxServers="-1">
<action type="update">
<prime>gdai55ff2a2244343a0b6b30dbb745rtdf</prime>
</action>
</CDF>
</ABC>
我想使用 python 代码来做到这一点。
最佳答案
这是一种简单的方法,使用正则表达式获取所需的文本,并将其替换为您想要的内容:
import re
f = open('xmlfile', 'r')
data = f.read()
f.close()
close = 'gdai55ff2a2244343a0b6b30dbb745rtdf'
reg = re.compile(r'<prime>(.*?)</prime>')
list = re.split(reg, data)
list[1] = '<prime>'+ close + '</prime>'
result = ''.join(list)
print result
输出将如下所示:
<ABC>
<CDF ExcludeDefaults="false" MaxServers="-1">
<action type="update">
<prime>gdai55ff2a2244343a0b6b30dbb745rtdf</prime>
</action>
</CDF>
</ABC>
希望这有帮助。
关于python - 使用 python 2.7 更新 xml 中的特定标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22680763/