目前我有一个 test.txt
1234
5678
我想打印没有换行符“\n”的每一行
file=open("test.txt","r")
lines = file.readlines()
for i in lines:
print i[:-1]
这将删除第一行的 \n ,但对于第二行: 5678
,8
将被切断,因为\n
它后面没有。什么是正确处理这个问题的好方法?
使用rstrip
.
i.rstrip()
将从右边删除所有空格,i.rstrip('\n')
只是换行符。
您可以使用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
,仅从左侧剥离。