所以我试图扭转所有线路,但相反,我得到完全奇怪的反转,它将第4行放在第5行与5线...
文件在翻转之前的样子:
1 line
2 line
3 line
4 line
5 line
倒车后:
5 line4 line
3 line
2 line
1 line
以下是代码:
file = open(filename, "r")
list = file.readlines()
file.close()
list.reverse()
file = open(filename, "w")
for value in list:
file.write(value)
file.close()
答案 0 :(得分:2)
您似乎在最后一行('\n'
)没有结束符号。
可以通过在需要时添加'\n'
来轻松修复:
file = open(filename, "w")
for value in list:
file.write(value.rstrip() + "\n")
file.close()
答案 1 :(得分:2)
文件的每一行都有一个换行符\n
,除了最后一行。
最简单的方法是:
file.open(filename,'r')
lines = file.read().split("\n")
file.close()
file = open(filename, "w")
file.write("\n".join(lines[::-1]))
file.close()
您还可以尝试使用str.strip()
或str.rstrip()
从字符串末尾或右侧删除所有空格。但是,这也会删除空格,制表符等。