[英]Replacing &qout; with " when writing to text file with python
我正在從文本文件中讀取列名稱的列表,然后使用這些名稱使用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)
replace方法無效,我寧願不必進行后處理來搜索和替換以及&qout;。 創建文件后。 感謝您的任何建議。
replace
不會就地修改字符串,它會返回具有所需更改的新字符串實例。 您應該將返回值分配給某些東西。
data = data.replace('&qout;', '"')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.