请问用python怎么修改xml的节点值?

如:<string>win xp</string>怎么把win xp修改为xin 7.

第1个回答  推荐于2017-11-28
from xml.etree import ElementTree
filePath = 'd:\\aaa.xml'
xmldoc = ElementTree.parse(filePath)
node = xmldoc.find('./string')
node.text = "win 7"

其实说实话,楼上的回答已经很清楚了.
不管什么编程语言,要想学好,基础一定要扎实.追问

我这样写之后,为什么我的xml里的值没有变化?

追答

他是改变不了原xml里的值的,需要你写到一个新的xml文件里
xmldoc.write(path)

本回答被提问者采纳
第2个回答  2011-09-05
xml.dom.minidom
parseString
getElementsByTagName
nodeValue
toxml
关键字都有了,自己看文档做,想要现成的没门
第3个回答  2019-08-28
def del_node(xml_path, node_name, new_path, new_node_name):
xmlDom = minidom.parse(xml_path)
root = xmlDom.documentElement
node_lst = root.getElementsByTagName(node_name)
for i in range(len(node_lst)):
node_lst[i].tagName= new_node_name
f = open(new_path, "w")
xmlDom.writexml(f)
f.close()
相似回答