我有一个包含以下内容的文本文件:
'\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c'
如你所见,这全是换页符,我想把它们删除。
我尝试了各种解决方案,但不知什么原因,它们似乎都不起作用。例如,我试图删除左侧的'\x0c
,右侧的\x0c'
和所有其他的\x0c
,但输出结果仍然相同。我使用的代码:
import re
import string
with open('AF-40-A-00020539.txt', "r", encoding="ascii") as input_file:
input_content = input_file.read()
print(
input_content.lstrip('\'\x0c')\
.rstrip('\x0c\'')\
.strip('\x0c')
.replace('\x0c', '')
)
执行后,我得到了这个输出:
\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c'
,与我的预期不符。
这是什么原因?如何去除换页符?
更新,感谢joao的回答: \xHH,其中HH是两个十六进制数字,是一种被认可的转义序列,用于使用相应的十六进制值编写ASCII字符,就像\n表示换行一样。
.replace('\x0c', '')
无法正常工作,因为在此字符串字面值中,\xOc
被转义了,而在文本文件中,它只是作为纯文本复制。