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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问用python怎么修改xml的节点值?相关的知识,希望对你有一定的参考价值。

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

参考技术A 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)

本回答被提问者采纳
参考技术B xml.dom.minidom
parseString
getElementsByTagName
nodeValue
toxml
关键字都有了,自己看文档做,想要现成的没门
参考技术C 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()

用dataGridView显示XML节点的属性值怎么做

<AnswerList>
<AnswerInfo Action="1" PageNo="-858993460" nBigTilteNo="-858993460" nSmallTileNo="fhg" />
<AnswerInfo Action="2" PageNo="0" nBigTilteNo="-858993460" nSmallTileNo="fg" />
<AnswerInfo Action="3" PageNo="0" nBigTilteNo="-858993460" nSmallTileNo="fgd" />
<AnswerInfo Subject="wq" Learn="fg" WorkTime="2011-9-22" Teacher="fgf" />
</AnswerList>

DataSet ds=new DataSet();
ds.ReadXml(test.xml);
dataGridView.DataSource=ds;
dataGridView.DataBind();追问

要只显示 Action与nSmallTileNo

追答

已经把xml读取出来放到一个dataset里面了 你要只显示action和nsmalltileno字段就像平常绑定字段这样绑定就ok了啊?你不会么?

参考技术A 就用属性名取啊 参考技术B 用代码定义一个DataTable对象,用XML解析工具获取属性值后填充到DataTable中,再把DataTable对象作为dataGridView的数据源。

以上是关于请问用python怎么修改xml的节点值?的主要内容,如果未能解决你的问题,请参考以下文章

java窗体程序 打包jar后 怎么动态修改xml配置信息,请问哪位大神会啊

我学习安卓XML文件修改,请问AXMLPrinter2.jar这个反编译XML的工具怎么使用?

python解析xml,包含中文,gb2312编码。修改xml后重新写入xml有些内容怎么变了? 我的步骤如下:

用Python实现合并两个排序的列表,但一直报错,请问怎么修改啊?

请问有没有批量修改xml 文件的软件或工具!

请问我要转数据库该怎么改