【发布时间】:2016-12-03 01:01:33
【问题描述】:
我正在使用 ElementTree 将 CSV 文件与 XML 文档进行比较。如果标签与 CSV 中的第一个单元格匹配,则脚本应更新标签。当我将 XML 导入不同的程序 (InDesign) 时,标签需要有一个不间断的空格以防止文本换行。
XML 输入:
<Table_title>fatal crashes by time of day</Table_title>
<cell>data1</cell>
<cell>data2</cell>
<cell>data3</cell>
CSV 输入:
'fatal crashes by time of day', data1, data2, data3
但是,当我使用 ET.parse('file.xml') 将 XML 读入 ElementTree 脚本时,它似乎将字符呈现为一个不间断的空格:
<Table_title>fatal crashes by time of day</Table_title>
<cell>data1</cell>
<cell>data2</cell>
<cell>data3</cell>
这正是它应该做的(我认为)。但在这种情况下,我实际上希望 &#160; 呈现为字符串,以便它匹配 CSV 的第一个单元格(因为当读取 CSV 时,它会将其解释为字符串:'fatal crashes by&#160;time of day')。
有没有办法:
- 强制 XML 脚本将不间断空格作为字符串而不是转义字符读取:
<Table_title>fatal crashes by&#160;time of day</Table_title>
或
- 强制 XML 脚本读取 CSV 并将字符呈现为转义字符而不是字符串:
'fatal crashes by time of day', data1, data2, data3
【问题讨论】:
标签: python xml csv elementtree