gpt4 book ai didi

python - 在不同的程序中使用相同的 excepts

转载 作者:行者123 更新时间:2023-12-01 05:16:31 24 4
gpt4 key购买 nike

我有一堆类,它们都使用相同的模块 Errors.py,其中我使用以下类定义了自定义异常:

class Errors(Exception):

class funcUnicodeError(Exception):
def __init__(self, param, err):
self.err = err
self.param = param
self.msg = 'ERROR : Failed to decode PARAM: ' + param
self.code = 20

所有这些类都在不同的程序中重复使用,我最终在主函数末尾有一长串 except 子句。这一切都很好,只是这些异常(exception)对于不同的程序是相同的,并且我必须在不同的地方维护它。

有没有办法将这些 except 子句堆叠在某处,以便在不同的程序中对其进行一次唯一的调用?

最佳答案

以下代码

try:
# do something
except Error1:
# except clause 1
except Error2:
# except clause 2
... # long list of except clauses
finally:
# do something

相当于

def main():
# do something

def run(main_func):
try:
main_func()
except Error1:
# except clause 1
except Error2:
# except clause 2

... # long list of except clauses
finally:
# do something

run(main)

现在您可以将函数 run 外包到模块中,并且可以在不同的程序中多次重用它。

关于python - 在不同的程序中使用相同的 excepts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23080331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com