2012-08-15 77 views
-4

我已经是这个任务的同时(5个月)工作,我还是不明白该怎么做..包封物代码,使异常处理


考虑下面的代码:

f=open(filen, ”w”) 
while n>0: 
    f.write(str(n)+”\n”) 
    n=n-2 
f.close() 

任务: 确定合适的参数并将代码封装为其自身的函数。 另外,在你的版本中添加一个适当的异常处理!


我知道我必须从“def”开始,像“def function():”。之后的代码。 关于异常处理,我不知道..

+1

这看起来像某种家庭作业可疑。 – 2012-08-15 15:03:41

+0

是的,它来自一个旧的考试。 – sVist 2012-08-15 15:18:04

回答

1
def do(): 
    with open(filen, 'w') as f 
     for n in range(0, 8, 2): 
      f.write(str(n)+'\n') 
+0

范围内的+1而不是 – BrtH 2012-08-15 15:26:18

1

你可以创建一个函数并调用它像这样:

def write_even_nums(file_name, n): 
    with open(file_name, 'w') as f: 
     while n > 0: 
      f.write(str(n) + '\n') 
      n = n - 2 

write_even_nums('out.txt', 100) 
+0

您绝对不应该抓到'Exception',这会捕获*一切*,这不是您想要的。在函数中调用'sys.exit'也是不好的。 – dav1d 2012-08-15 21:50:40

+0

meh。删除处理程序。 – 2012-08-16 12:15:50