当我这样做
f = open("test.txt","r")
s = f.readline()
l = s.split[' ']
,其中输入文件具有内容2 3\n
。 s
的值为['2', '3\n']
。有没有办法告诉python每行以\n
结尾,因此不应该读取它?
文件内容:
3 2\n
#1###2#\n
****#**\n
##*###*\n
#******\n
#*#O##*\n
我将对其他行执行其他操作。但是我仍然需要摆脱\n
答案 0 :(得分:1)
这里需要说明的是,除了文字'\n'
之外,每行末尾还有一个实际的\n
(最后一行除外,它只有文字'\n'
):
with open('test.txt') as f:
print(f.readlines())
# ['3 2\\n\n', '#1###2#\\n\n', '****#**\\n\n', '##*###*\\n\n', '#******\\n\n', '#*#O##*\\n']
您需要同时使用文字.strip
和实际'\n'
来调用\n
:
with open('test.txt') as f:
lines = [line.strip('\\n\n') for line in f]
print(lines)
# ['3 2', '#1###2#', '****#**', '##*###*', '#******', '#*#O##*']