python except異常處理之后不退出,解決異常繼續執行的實現
寫了個等待分析結果,解析分析結果json的腳本
那個文件生成時候有點大,有時候監測到新文件就去解析可能文件只生成了一半,就會拋出異常退出當前線程,此次的分析結果就丟失了,如果load json文件失敗,一般就是上百M到幾G的json大文件,等待10秒,如果再次load失敗,重新再load一次,這樣腳本看上去挺繁瑣的,監控線程又只能監控文件的創建,修改和刪除,不知道創建的文件是否寫完畢。
def run_analyze(): sleep(2) berror = True temp = {} while berror == True: with open(self.filepath, ’r’) as f: global filename,filescore,filesize,filebehavior,filestringstry: temp = json.loads(f.read()) berror = Falseexcept:#KeyError, VauleError print 'analyze report is creating,please wait a moment...' f.close() sleep(5) berror = True pass filescore = float(temp[’info’][’score’]) print ('filescore:%d' %filescore)
補充知識:Python強制拋出自定義異常
如下所示:
raise Exception('My Exception')
當程序運行到這行時,會拋出異常,打印出Exception: My Exception
以上這篇python except異常處理之后不退出,解決異常繼續執行的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
