需要反转文件,但最后一行没有回车,因此反转列表的第一项中有2行。

| 这是文件
303620.43,6187793.62
303663.61,6187757.08
303652.22,6187702.51
303580.10,6187685.43
303551.63,6187737.15
303574.88,6187775.11
303610.94,6187773.69
当它反转时,我得到
303610.94,6187773.69303574.88,6187775.11
303551.63,6187737.15
303580.10,6187685.43
303652.22,6187702.51
303663.61,6187757.08
303620.43,6187793.62
如何确保反转时的最后一行具有
\'\\n\'
?     
已邀请:
使用
rstrip
删除所有行中的换行符(和其他尾随空格),然后依靠
print
将其放回去。
a = [ln.rstrip() for ln in open(\'datafile.txt\')]
a.reverse()
for ln in a:
    print(ln)
    
在代码中,读完一行后,检查它是否以
\'\\n\'
结尾。如果没有,请附加ѭ2并继续进行。
endswith
方法可能会派上用场。     
+1为larsmans响应。另一种解决方案是使用字符串对象的splitlines方法:
myFile = open(filePath, \'r\')
lines = myFile.read().splitlines() #by default splitlines removes trailing \'\\n\'
myFile.close()
lines.reverse()
for line in lines:
    print line
    

要回复问题请先登录注册