julia - 在 Julia 的一行( block 除外)中捕获多个异常?

标签 julia

我正在尝试将多个异常条件堆叠到一行中。我怎样才能在 Julia 中做到这一点?

最佳答案

您需要检查 catch block 中的错误类型,通常使用 if-else 树。 if-else 语法自然会遵循其他任何内容。

这是我认为“规范”的做法:

try 
    # throw some error here
catch e 
    if e isa ErrorException
        # do something
    elseif e isa ArgumentError
        print("So much for multiple dispatch")
    else
        rethrow(e)
    end
end

您可以使用三元运算符将其缩减为一行,但这可能不值得。

关于julia - 在 Julia 的一行( block 除外)中捕获多个异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58151053/

相关文章:

Julia :如何处理错误:检测到包无法满足的要求?

datatable - Dash 数据表中的条件格式值 (Julia)

julia - 在 Julia 中,为什么 @printf 是宏而不是函数?

julia - 如何定义一个 Vector 以使 Julia 中的所有元素都属于同一类型?

作为边值问题的 Julia 微分代数方程

julia - 此马尔可夫链模型中鼠标的预期生命周期

package - `ERROR: EOFError: read end of file` 安装新 Julia 版本后使用包时

julia - Julia 是否有相当于 Ans (Matlab) 或 Last.value (R) 的东西

julia - 让 Julia 在 LOAD_PATH 中查找文件

types - 函数对象作为 Julia 中的类型字段