标签:指定 特性 异常捕获 括号 引入 处理 模式 ror 写法
最近在实现 Berry 的异常处理特性,进过初步的调查后决定使用类似 Python 的 try-except
异常处理模式,为此要引入三个新的关键字:
try
:表示异常捕获块的开始,位于异常捕获块中的代码抛出的异常将会被捕获,并由 except
语句指定的代码来处理。except
:由该关键字构成的语句后跟随一个用于处理指定异常的代码块。raise
:该语句用于抛出一个异常。异常处理的常见写法类似这样:
try
...
raise error
except ErrorName:
...
end
在 Berry 中,raise
语句后允许跟 1 到 2 个表达式,第一个表达式为抛出的异常值,第二个可选参数为额外的参数。except
语句的写法则比较多:
excpet Exception:
:捕获 Exception
异常。excpet [Exception1, Exception2, ...]:
:捕获 Exception1
、Exception2
等异常。excpet Exception, arg
:捕获 Exception
异常,同时获取一个额外参数 arg
。excpet [Exception1, Exception2, ...], arg
:捕获 Exception1
、Exception2
等异常,同时获取一个额外参数 arg
。except (e)
:将捕获的异常对象存入变量 e
,任何异常都会被捕获。except (e), arg:
:将捕获的异常对象存入变量 e
,任何异常都会被捕获。同时获取一个额外参数 arg
。注意,except [...]:
这种写法中的方括号虽然类似于 list
字面量的写法,但是前者方括号中所有的值并不构成 list
,它们只是如此排列。
标签:指定 特性 异常捕获 括号 引入 处理 模式 ror 写法
原文地址:https://www.cnblogs.com/skiars/p/11746223.html