我正在从文本文件中读取列名列表,然后使用它们使用pystache呈现sql模板,然后将呈现的模板写入sql文件。问题有时候列名将有一个冒号,因此需要在查询中用双引号括起来。
列名文本文件示例:
column1
"column2:extra"
column3
我遇到了双引号被& quot 取代的问题;在输出文件中。我尝试过使用
#read in column names
with open(attrs_file, 'r') as fields:
attrs = fields.read().splitlines()
...
with open(sql_in, 'r') as sql:
data = sql.read()
data = pystache.render(data, {'replace':new})
with open(sql_out, 'wb') as sql:
data = data.replace('&qout;', '"')
#data = data.replace('&qout;', "\"")
sql.write(data)
替换方法没有用,我宁愿不必进行后期处理来搜索和替换& qout;创建文件后。谢谢你的任何建议。
答案 0 :(得分:0)
replace
不会就地修改字符串,它会返回一个包含所需更改的新字符串实例。您应该将返回的值分配给某个东西。
data = data.replace('&qout;', '"')