当我有一个类似"Hi \\x00"
的字符串时,当我尝试使用类似
thatstring = thatstring.replace("\\x00",chr(0))
然后保存到文件中
f = open("test.txt","r+")
f.seek(0)
f.write(thatstring)
f.truncate()
f.close()
在文件中,它将显示为“Hi\NULL”(NULL表示chr)
我想问题是我在r+模式下写入文件,而不是br+,所以它会在chr之前放一个\但我不能使用br+,因为它必须以“字节格式”写入文件,而且我的字符串必须包含字母和“特殊chr”。你知道吗
我正在使用Python3.x
我怎样才能避免这种情况?你知道吗
文件中的文本是文本
\\x00
,因此有两个反斜杠。然后,您的代码只替换其中一个反斜杠:文件内容不受Python的string-literal转义扩展的约束,因此这里不需要转义。你知道吗
替换两个反斜杠,或者在文件中只使用一个反斜杠。用另一个原始字符串文字替换这两个字符串最简单:
相关问题 更多 >
编程相关推荐