我想在python中操作我的文本。我将使用此文本嵌入为JavaScript数据。我需要文本文件中的文本完全显示如下。它应该具有我在下面提到的格式,而不仅仅是它打印时。
我有文字:
""text""
我希望:
\"text\"
with open('phase2.2.1.csv', 'w', newline='') as csvFile:
writer = csv.writer(csvFile)
for b in batches:
writer.writerow([b.replace('\n', '').replace('""', '\\"')])
不幸的是,上面的收益
\""text\""
任何帮助将不胜感激。
答案 0 :(得分:6)
我建议:
.replace('""', '\\"')
它确实有效,请参阅:
In [8]: x = '""text""'
In [9]: print(x.replace('""', '\\"'))
\"text\"
答案 1 :(得分:4)
如果您尝试生成的是JSON编码的字符串,那么正确的方法是使用json
模块:
text = json.dumps(text)
如果您尝试生成实际的JavaScript源代码,那么几乎正确的答案。 JSON非常接近成为JavaScript的一个子集 - 比一个你刚才注意到的一个错误的快速和肮脏修复更接近。
如果你真的想为任何可能的字符串生成正确的JS代码,你必须处理JSON不是JS的一个子集的极端情况。但是没有人这么做过(在人们注意到规格差异之前需要花费数年时间。)