目前我有一个test.txt
1234
5678
我想在不使用换行符“\ n”<\ p>的情况下打印出每一行
file=open("test.txt","r")
lines = file.readlines()
for i in lines:
print i[:-1]
这将删除第一行的\ n,但对于第二行:5678
,8
将被切断,因为后面没有\n
。什么是正确处理这个问题的好方法?
答案 0 :(得分:4)
使用rstrip
。
i.rstrip()
将从右侧删除所有空格,i.rstrip('\n')
只删除换行符。
答案 1 :(得分:4)
您可以使用str.rstrip
for i in lines:
print i.rstrip('\n')
这将删除每一行的换行符(如果有的话)。 rstrip
本身会删除所有尾随空格,而不仅仅是换行符。
例如:
>>> 'foobar\n'.rstrip('\n')
foobar
>>> 'foobar'.rstrip('\n')
foobar
>>> 'foobar \t \n'.rstrip()
foobar
相关的是str.strip
,它从两端剥离,而str.lstrip
只从左侧剥离。