2

我正在尝试读取一个文本文件并用每一行做两件事:

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

以前的代码有效,但 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,所以请原谅我对它的最大无知.. 非常感谢!干杯!

4

2 回答 2

2

你在之前的行中缺少一个括号

output.write(line

应该

output.write(line)
于 2013-02-04T07:04:05.187 回答
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)
于 2013-02-04T15:52:20.143 回答