我已經有一個包含雙引號的字符串的輸入文件,並且想用Python生成一個C風格的頭文件。python:將'backslash double-quote'字符串寫入文件
說,
input file: Hello "Bob"
output file: Hello \"Bob\"
我不會寫代碼,即可獲得這樣的文件,這是我到目前爲止已經試過:
key = 'key'
val = 'Hello "Bob"'
buf_list = list()
...
val = val.replace('"', b'\x5c\x22')
# also tried: val = val.replace('"', r'\"')
# also tried: val = val.replace('"', '\\"')
buf_list.append((key + '="' + val + '";\n').encode('utf-8'))
...
for keyval in buf_list:
lang_file.write(keyval)
lang_file.close()
輸出文件始終包含:
Hello \\\"Bob\\\"
我沒有問題寫\n
,\t
串到輸出文件。
看來我只能寫零或兩個反斜槓,有人可以幫忙嗎?
已經嘗試過,請參閱我的代碼。 這將與「打印」功能一起使用,但不能在寫入文件時使用。 – maestun
@maestun - 在我身邊正常工作。 –
試試這個:'key ='key'; val ='你好'鮑勃''; buf_list = list(); val = val.replace(''',r'\「'); h = open('temp.txt','w'); h.write(val); h.close();' –