Python 3.3需要非常简单的初学者代码的帮助

时间:2013-02-04 07:03:02

标签: python file sequential

我正在尝试阅读文本文件并使用evey行做两件事:

  • 在我的显示器上显示
  • 创建备份副本..

之前的代码有效但Python在我的显示器上显示垃圾

然后我尝试了这段代码并且它在file.close()语句中抱怨语法错误。

=============================================== =

file = open ('C:\ASlog.txt', 'r')
output = open('C:\ASlogOUT.txt', 'w')

for line in file:
   print(str(line))
   output.write(line

file.close()
output.close()

=============================================== =====

今天是我第一次看到Python,请原谅我对它的无知。 谢谢堆! 干杯!

2 个答案:

答案 0 :(得分:2)

你错过了

之前一行的括号
output.write(line

应该是

output.write(line)

答案 1 :(得分:0)

如果您是Python新手,尤其是3.3,那么您应该使用自动关闭文件的with

with open('input') as fin, open('output', 'w') as fout:
    fout.writelines(fin) # loop only if you need to do something else

在这种情况下写得更好:

import shutil
shutil.copyfile('input filename', 'output filename')

因此,您的完整示例将用于显示屏幕并将行写入文件:

with open('input') as fin, open('output', 'w') as fout:
    for line in fin:
        print(line)
        fout.write(line)