使用lxml在Python中存储系统路径
我正在使用一个xml文件来存储软件的配置 其中一种配置是系统路径,如使用lxml在Python中存储系统路径,python,xml,lxml,Python,Xml,Lxml,我正在使用一个xml文件来存储软件的配置 其中一种配置是系统路径,如 > set_value = "c:\\test\\3 tests\\test" 我可以使用以下方法存储它: > setting = etree.SubElement(settings, > "setting", name=tmp_set_name, type = > set_type , value= set_value) 如果我使用 doc.write(output_file, method='x
> set_value = "c:\\test\\3 tests\\test"
我可以使用以下方法存储它:
> setting = etree.SubElement(settings,
> "setting", name=tmp_set_name, type =
> set_type , value= set_value)
如果我使用
doc.write(output_file, method='xml',encoding = 'utf-8', compression=0)
该文件将是:
{'type': 'str', 'name': 'yowza!', 'value': 'c:\\test\\3 tests\\test'}
正如你所看到的,这就像你所期望的那样。如果你真的有这个问题,你是在做别的事情,而不是在说什么。向我们展示真实的代码,或者制作一个小示例代码,在其中演示问题并使用它
现在,我又读了一遍
etree.parse方法
我获得一个具有
字符串值,但该字符串包含
如果我想用它来
再次写入xml,它将
解释
我只是试了一下,但没有得到“解释”。解析后返回的元素属性为:
{'type': 'str', 'name': 'yowza!', 'value': 'c:\\test\\3 tests\\test'}
正如你所看到的,这就像你所期望的那样。如果你真的有这个问题,你是在做别的事情,而不是在说什么。向我们展示真实的代码,或者制作一个小示例代码,在其中演示问题并使用它。这只是反斜杠的问题吗?如果是这样的话,就用前斜杠吧——它们在Windows上也很好用。这只是后斜杠的问题吗?如果是这样的话,就用斜杠吧——它们在Windows上也很好用。谢谢你,你的测试非常有用。我使用从xml中删除的值在设置对象内创建变量。问题就在这段代码中:exec('self.%s=%s%%(k,v)),其中k是属性名,v是值\\,当在%s中被替换时,在解释的位置。当我读取对象以创建xml时,我读取字符串时没有使用double\\n,我错误地认为问题出在lxml打印中,但这是前面的一段。你为什么要使用exec?谢谢你,你的测试非常有用。我使用从xml中删除的值在设置对象内创建变量。问题就在这段代码中:exec('self.%s=%s%%(k,v)),其中k是属性名,v是值\\,当在%s中被替换时,在解释的位置。当我读取对象以创建xml时,我读取字符串时没有使用double\\n,我错误地认为问题出在lxml打印中,但这是前面的一段。你为什么要使用exec?setattr(自、k、v)