当前位置:首页>python>Python学习记录(20)

Python学习记录(20)

  • 2026-10-11 05:58:39
Python学习记录(20)

1.由于开发者将关键字敲错导致的,这类错误多数产生的是SyntaxError: invalid syntax(无效的语法),这将直接导致程序不能运行。这类异常是显式的,在开发阶段很容易被发现。还有一类是隐式的,通常和使用者的操作有关。

表1.Python中常见的异常

2.异常处理语句

2.1try...except语句,把可能产生异常的代码放在try语句块中,把处理结果放在except语句块中。语法格式如下:

try:

    block1

except [ExceptionName [as alias]]:    

block2

参数说明:■ block1:表示可能出现错误的代码块。■ ExceptionName [as alias]:可选参数,用于指定要捕获的异常。其中,ExceptionName表示要捕获的异常名称,如果在其右侧加上as alias,则表示为当前的异常指定一个别名,通过该别名,可以记录异常的具体内容。■ block2:表示进行异常处理的代码块。在这里可以输出固定的提示信息,也可以通过别名输出异常的具体内容。

应用实例:

在try....except语句中再添加一个不能输入小数的异常处理:

2.2 try...except...else语句

else子句,用于指定当try语句块中没有发现异常时要执行的语句块,该语句块中的内容当try语句中发现异常时,将不被执行。

2.3 try...except...finally 语句

其语法格式如下:

try:

    block1except [ExceptionName [as alias]]:

    block2

finally:    block3

对于try…except…finally语句的理解并不复杂,它只是比try…except语句多了一个finally语句,如果程序中有一些在任何情形中都必须执行的代码,那么就可以将它们放在finally代码块中。

2.4 使用raise语句排除异常

语法格式如下:

raise[ExceptionName[(reason)]]

如上面的例子,增加一个当苹果数量小于小朋友的数量时,应抛出一个异常:

3.使用assert语句调试程序

基本语法如下:

assert expression [,reason]

参数说明:■ expression:条件表达式,如果该表达式的值为真时,什么都不做,如果为假时,则抛出AssertionError异常。■ reason:可选参数,用于对判断条件进行描述,为了以后更好地知道哪里出现了问题。

例:在上面的程序中添加一个assert语句,验证苹果数量是否小于小朋友的数量:

assert语句可以和异常处理语句结合使用:

最新文章

随机文章