我有一个用单引号括起来的json字符串。因此,我使用单个反斜杠转义字符串中的单引号。
当我将输出写入文件时,它会在一个地方写入两个反斜杠。
简化示例如下,
import re
re.sub(r"'", r"\'", "abcd\'")
它写入文件
abcd\\'
但我更喜欢写,
abcd\'
答案 0 :(得分:1)
您的代码应该可以很好地运行:
>py -3
>>> import re
>>> with open("test.txt", "w") as file:
... file.write(re.sub(r"'", r"\'", "abcd\'"))
...
6
>cat test.txt
abcd\'
当Python显示带有反斜杠的字符串时,它会将其显示为转义字符串 - 这并不意味着存在额外的反斜杠,它只是用来区分转义字符和真正的反斜杠
>>> r"abcd\'"
"abcd\\'"
>>> print(r"abcd\'")
abcd\'