2012-08-15 69 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