【发布时间】:2013-12-23 16:24:29
【问题描述】:
我有一个名为 test.txt 的 txt 文件,其中有 4 行。我想将包含“异常”一词的行从命令行参数复制到一个新文件中。我已经做到了这一点。但我也想对 IO 错误进行异常处理。也就是说,如果在命令行中,有人拼错了 test.txt,它会抛出异常。这是我当前的代码。请帮忙!我是初学者。目前,如果我故意拼错它,它不会显示我想要显示的错误消息。
import sys
def Cat(filename):
try:
f = open(filename, 'rU')
for line in f:
print (line),
return 3
except IOError:
print('\nIO error!!', filename)
def main():
f1 = open(sys.argv[1])
f2 = open(sys.argv[2], 'w')
for line in f1:
if 'exception' in line:
f2.write(line)
if __name__ == '__main__':
main()
【问题讨论】:
-
请同时修正你的缩进——你所有的 Python 代码应该对每个块级别使用相同数量的缩进,因为你使用 1、2 和 4 个空格的组合。 4 个空格是标准的,但一致性更重要(至少使用 1 个以上)。
标签: python file exception-handling