我有一个像这样的文本文件
i am a messi fan \t
我正在使用这段代码来读取数据。
f = open(input_para['controle_file'], 'r')
filedata = f.read().splitlines()
现在我的输出是:
i am a messi fan \\t
需要输出的结果是i am a messi fan \t
在Python中,如何从文本文件中获取这个精确数据?
我有一个像这样的文本文件
i am a messi fan \t
f = open(input_para['controle_file'], 'r')
filedata = f.read().splitlines()
i am a messi fan \\t
需要输出的结果是i am a messi fan \t
在Python中,如何从文本文件中获取这个精确数据?
区别在于Python如何表示字符串。如果您使用print
命令,您将会看到您想要的结果。
>>> r"foo\t"
'foo\\t'
>>> print r"foo\t"
foo\t
repr
和str
之间的区别...>>> s = r"foo\t"
>>> print str(s)
foo\t
>>> print repr(s)
'foo\\t'
之所以这样做是因为如果可能的话,repr
应该返回一个适合用于重新创建该对象的字符串。在您的情况下,如果repr
没有添加额外的转义反斜杠,则字符串表示将看起来像其中有一个制表符。
repr
版本,当你使用str
或打印该字符串时,你将不会得到任何'\\t'
。>>> strs = "i am a messi fan \t"
>>> repr(strs)
"'i am a messi fan \\t'"
>>> str(strs)
'i am a messi fan \t'
>>> print strs
i am a messi fan