有没有办法从文件中读取转义字符并正确处理它们

时间:2019-05-02 04:34:02

标签: python-3.x

我正在尝试编写代码,对某些文件进行一些数据处理。我已经编写了将文件拆分为段落的逻辑。目前,我正在使用'\ n \ r'进行拆分。我想读取文件中的拆分条件,以便将来在需要时可以轻松更改它们。但是,我从文件中读取的'\ n \ r'并没有我希望其行为的方式

我在文件中写入了\ n \ r,当我读取该文件时,它与被分配为'\ n \ r'的变量不同

>>> vr = '\n\r'
>>> from_file = open('test.txt').read()
>>> print (vr)


>>> print (from_file)
\n\r
>>> print (len(vr))
2
>>> print (len(from_file))
4

那么如何将我从文件中读取的内容转换为普通的python字符串?

谢谢

1 个答案:

答案 0 :(得分:1)

您要做的是解析读入的字符串,并将特殊的字符序列转换为否则很难键入的字符。

较大的解析可能是一个非常复杂的主题。如果您要做的就是替换反斜杠转义符,则可以执行简单的字符串替换:

from_file = from_file.replace("\\r", "\r")
from_file = from_file.replace("\\n", "\n")
from_file = from_file.replace("\\t", "\t")
...
from_file = from_file.replace("\\\\", "\") # always last

这非常幼稚,但符合您所说的要求。

相关问题