小编Mar*_*ers的帖子

尝试不同的功能,直到没有异常

我有一些函数,它们尝试根据一组输入数据使用各种方法来解决问题。如果该方法无法解决问题,则该函数将引发异常。

我需要按顺序尝试它们,直到没有异常。

我正在尝试找到一种优雅的方法:

try:
    answer = method1(x,y,z)
except MyException:
    try:
        answer = method2(x,y,z)
    except MyException:
        try:
            answer = method3(x,y,z)
        except MyException:
            ...

Run Code Online (Sandbox Code Playgroud)

在伪代码中,我的目标是:

tryUntilOneWorks:
    answer = method1(x,y,z)
    answer = method2(x,y,z)
    answer = method3(x,y,z)
    answer = method4(x,y,z)
    answer = method5(x,y,z)
except:
    # No answer found
Run Code Online (Sandbox Code Playgroud)

要明确:method2除非method1失败,否则不能调用,依此类推。

python python-3.x

6
推荐指数
1
解决办法
48
查看次数

标签 统计

python ×1

python-3.x ×1