Python编程基础篇之异常

Python编程基础篇之异常


一、异常介绍

当Python无法处理程序时就会发生异常,会影响程序的正常执行。异常也是Python的一个对象,表示一个错误。


提示:以下是本篇文章正文内容,下面案例可供参考

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、异常捕获

当Python脚本有发生异常的可能时,就需要捕获异常,避免程序终止执行。

语法

try:
	正常程序执行代码块
except:
	抛出错误执行代码块

例子:将以下代码进行异常捕获,当代码异常时将ipt赋值为1。

ipt = input('请输入:')
ipt = float(ipt)
print(ipt)
try:
	ipt = input('请输入:')
	ipt = float(ipt)
	print(ipt)
except:
	ipt = 1
	print(ipt)

异常类型捕获

语法

try:
	pass
except 当前异常对象 as e:    # e = 当前异常对象
	print(e)

例子: 捕获以下代码的异常类型并输出

li = [1, 2, 3]
li[3]
try:
	li = [1, 2, 3]
	li[3]
except IndexError as e:
	print(e)

内置错误类的查询

cmd命令窗口中输入help(builtin)即可查看相应的内置错误类。上面出现的错误类(IndexError, ValueError, NameError等等)都属于Exception这个父类,所以Exception这个类可以捕获到所有子类的异常。

try:
	li = [1, 2, 3]
	li[3]
except Exception as e:
	print(e)

try-except-else

如果程序抛出异常,执行except代码;如果程序正常执行,执行else代码。

try:
	正常程序执行代码块
except:
	抛出错误执行代码块
else:
	程序正常执行后执行此代码

try-finally

不管程序有无异常发生,都将执行finally内部代码。

try:
	正常程序执行代码块
except:
	抛出错误执行代码块
else:
	程序正常执行后执行此代码
finally:
	程序异常与否都执行此代码

该处使用的url网络请求的数据。

主动触发异常

语法

raise Exception(‘抛出的异常信息’)
def cook(level):
	if level < 5:
		raise Exception('没熟,不能吃奥。。。')

try:
	cook(4)
except Exception as e:
	print(e)
else:
	print('您请吃吧!')

自定义异常

当需要自定义满足一些规则时就可以自定义异常。自定义异常通过一个新的异常类自定义名字与内容,并且需要继承Exception类实现。

class ExampleError():
	def __init__(self, msg):
		self.infor = msg
	def __str__(self):
		return self.infor

try:
	raise ExampleError('Hello, world!')
except ExampleError as e:
	print(e)

断言

assert 断言用于判断一个表达式,当表达式条件为False时触发断言异常AssertionError。

语法

assert 断言

注意:断言用于强制用户服从,可捕获,但一般不捕获。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值