我是一名资深编码员,但我正在尝试编写一个能够快速替换XML中所有值的代码。我想用统一的值替换'linear'和'angular'的每个实例。我将代码和XML保存到我的桌面,然后运行代码,但我想出了上图所示的错误。我的代码也在截图中。在此先感谢您的帮助!
答案 0 :(得分:0)
我还建议您在问题下面发布代码和错误消息,并修改代码以提供一个有效的示例!
尽管如此,我认为你错误地将 ElementTree.parse 方法误认为 ElementTree.fromstring 。第一个解析给定文件名的XML文件到函数,后者解析包含XML的给定字符串。为了显示差异:
MyFile.xml:
<body>
<linear>10</linear>
<angular>0.314159</angular>
</body>
--------------------------------
from xml.etree import ElementTree
file_name = r'MyFile.xml'
et_parse = ElementTree.parse(file_name).get_root()
with open(file_name, 'r') as fid:
file_content = fid.read()
et_fromstring = ElementTree.fromstring(file_content)
et_parse == et_fromstring
如果您仔细阅读xml.etree.ElementTree的文档,您会发现第一行中提到的那些方法的不同。