色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

python 運行多個函數,如何讓單個函數的報錯不影響其他函數的執行

瀏覽:110日期:2022-08-16 10:37:32

問題描述

假設有 a , b , c 三個函數需要執行,但是有可能會其中某個函數會報錯

最初的寫法是:

try: a() b() c()except: pass

這樣寫的問題是如果 b 報錯了,c 也不會執行了,想到可以在函數內部定義 try ,由此想到用裝飾器來搞:

def error(fun): def wrapped():try: fun()except: print(’這個函數出錯了:%s’ % fun.__name__) return wrapped@errordef a(): print( 1 / 0)@errordef b(): print(0 / 1) @errordef c(): print(’1111’)

這樣看問題勉強是解決了,但是每個函數頭上都頂個裝飾器,感覺有點二,所以問問有沒有更優雅的實現方法

實際上的代碼是運行一堆爬蟲,每個爬蟲都是不同的網頁,有可能會報錯,但是我不想讓單個網頁的報錯影響到其他爬蟲的執行

問題解答

回答1:

不知道你要的「更優雅的實現方法」是什么。忽略所有函數的錯誤本來就很不優雅了。

當然你可以寫一個這種函數:

import tracebackdef run_with_ignorance(*funcs): for f in funcs: try: f() except Exception: traceback.print_exc()

然后這么調用:

run_with_ignorance(a, b, c)

標簽: Python 編程
主站蜘蛛池模板: 国产中文字幕视频 | 九九午夜 | 日韩国产欧美一区二区三区在线 | 毛片免费视频观看 | 欧美一区二区三区精品国产 | 国产在亚洲线视频观看 | 久久视频国产 | 日韩亚洲人成网站在线播放 | www中文字幕 | 一区二区在线播放福利视频 | 九九九国产在线 | 亚洲国产精 | 一本色道久久88 | 久草免费在线视频观看 | 欧美老头老太做爰xxxx | 成人一区二区免费中文字幕 | 三级视频网站在线观看 | 亚洲a级在线观看 | 欧美日韩高清性色生活片 | 成年男女免费视频网站播放 | 国产在线观看一区精品 | 成年午夜性爽快免费视频不卡 | 欧美一级毛片在线一看 | 成人亚洲精品 | 欧美一区二区在线观看免费网站 | 国产末成年女噜噜片 | 一本久久道 | 久久99精品视频在线在线观看 | 亚洲国产天堂久久综合网站 | 日本一在线中文字幕天堂 | 欧美一级特黄乱妇高清视频 | 亚洲国产成人久久一区久久 | 99久久精品国产一区二区小说 | 日本一区二区三区欧美在线观看 | 国产精品99久久99久久久看片 | 国产深夜福利视频网站在线观看 | 免费v片在线观看 | 欧美日比视频 | 精品国产91久久久久久久a | 一区二区三区在线播放视频 | 成熟的女性强烈交性视频 |