Day06 : python异常处理

一、语法错误

1. 1 拼写错误

拼写错误即Python语言中关键字、变量名、函数名等拼写错误。
关键字拼写错误会提示SyntaxError(语法错误),而变量名和函数名会在运行时爆出NameError的错误提示:

printt('hello')

Traceback (most recent call last):
  File "C:/Polaris/MyCode/PythonBase/python_exp/test1.py", line 1, in <module>
    printt('hello')
NameError: name 'printt' is not defined

1.2 不符合Python语法规范

一般来讲就是少了括号或者冒号什么的,也有可能是表达式写错了。

1.3 缩进错误

在Python中相当常见的一种错误,Python一般规定标准的缩进是四个空格。当然,使用一个Tab键也是没有问题的,不过在同一个项目或者程序中应该使用一种缩进方式。

二、异常处理

1.1 异常

  Python使用被称为异常的特殊对象来管理程序执行期间发生的错误。每当发生让Python不知所措的错误时,它都会创建一个异常对象。如果你编写了处理该异常的代码,程序将继续运行;如果你未对异常进行处理,程序将停止,并显示一个traceback,其中包含有关异常的报告。

1.2 使用try…except…代码块

异常是使用try-except代码块处理的。try-except代码块让Python执行指定的操作,同时告诉Python发生异常时怎么办。使用了try-except代码块时,即便出现异常,程序也将继续运行:显示你编写的友好的错误消息,而不是令用户迷惑的traceback。
示例:

try:
    print(5 / 0)
except ZeroDivisionError:
    print("You can't divide by zero!")

简单来说,就是避免用户看到一堆乱七八糟的代码,提高用户的体验。

1.3 else代码块

通过将可能引发错误的代码放在try-except代码块中,可提高这个程序抵御错误的能力。错误是执行除法运算的代码行导致的,因此我们需要将它放到try-except代码块中。这个示例还包含一个else代码块;依赖于try代码块成功执行的代码都应放到else代码块中

1.4 finally代码块

始终执行该代码块,一般用来达到释放资源等目的。
异常处理代码的一般形式:

try:
	<语句(块)>
except <异常名1>:
	<语句(块)>
except <异常名2>:
	<语句(块)>
...
else:
	<语句(块)>
finally:
	<语句(块)>

三、手工抛出异常

3. 1 raise抛出异常

用raise手工抛出异常,一般有一下三种方式:

raise 异常名
raise 异常名,附加数据
raise 类名

3.2 assert语句

简化的raise语句
一般形式如下:

assert <条件测试>,<异常附加数据>

3.3 自定义异常类

在Python中定义异常类不用完全自己定义,只要通过继承Exception类来创建自己的异常类即可。

四、学习心得

今天学习了什么是异常以及如何处理程序可能引发的异常,难度倒是没有很大,就是目前写一些小程序的时候应用性不是很强,以后用的时候在找一找文档复习一下就好了。

加油!!!

你可以的!你总是这样相信着自己!
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值