该程序旨在读取一个文件,然后以相反的顺序创建另一个文件。第一个文件为
Luke 19
Anakin 45
Han 35
Leia 19
Obiwan 70
Yoda 400
第二个文件应该是相反的列表,首先是Yoda 400,然后是Luke 19。我通过使用reverse()函数在程序中遇到错误,它说该对象没有属性“ reverse”。
编辑:建议的帖子不会创建一个与列表相反的新文件,而只是将其反向打印。
f = open("file1.txt","r")
f1 = open("file2.txt","w")
f1.write(f.reverse())
答案 0 :(得分:1)
这行得通,尽管有一个陷阱,那就是在某些文件中,最后一行没有eol字符,这意味着新文件中的第一行也没有。
with open("file1.txt","r") as f1:
lines = f1.readlines()
with open('file2.txt', 'w') as f2:
for item in reversed(lines):
f2.write(f"{item}")
如果最后一行有问题,则可以删除并替换换行符。
with open("file1.txt","r") as f1:
lines = f1.read().splitlines()
lines.reverse()
with open('file2.txt', 'w') as f2:
f2.write('\n'.join(lines))
答案 1 :(得分:1)
您可以遵循以下代码,
f = open("file1.txt","r")
f1 = open("file2.txt","w")
f1.writelines(reversed(f.readlines()))
fout = open("file2.txt",'r')
fout.read()