2013-01-06 56 views
0

我對這個代碼:「traceback.print_exc()」後需要「返回False」嗎?

try: 
    self.cookie = Cookie.SimpleCookie(os.environ["HTTP_COOKIE"]) 
    tmpuid = self.cookie["uid"].value 
    tmpsid = self.cookie["sid"].value 
except Exception as e: 
    if not str(e).startswith('No cookie set'): 
     import traceback 
     traceback.print_exc() 
    return False 

是 「返回False」 後 「traceback.print_exc()」 需要的?

+0

作爲一般規則,您應該儘可能少的行放在'try'塊中,否則代碼不會產生一些有用的異常。例如,在這裏,你可能拼錯了''sid'',並且運行代碼不會告訴你你做了什麼。遵循相同的推理,僅捕獲相關類型的異常而非泛型「Exception」是非常有用的。這兩點對編寫健壯的代碼都很重要。 – EOL

回答

1

當然,只有在No cookie set例外情況下才會停止例外。如果是任何其他異常,程序將return False而不是繼續到下一個語句

+0

謝謝!我忘了修改字符串,對不起 – tsuibin

相關問題