从入门开始,python学习(五)

今天比较闲,公司没任务,就来写文章,这篇文章就是纯记录异常了,写的比较少,大家如果学习python,关注我,我们一起努力,一起成长

一 异常简介

如下示例: 发生异常

print("------test----1---")

f = open("123.txt",'r')

print("------test----2---")

运行结果:

在这里插入图片描述
第一句 print("------test----1—") 正常执行,当错误抛出,第二句 print("------test----2—") 就不能执行了

说明:
打开一个不存在的文件123.txt的时候,就会抛出给我们一个IOError类型的错误

二 捕获异常

try:
	print("------test----1---")

	f = open("123.txt",'r')

	print("------test----2---")
except IOError:    #文件找不到,属于IO异常(输入输出异常)
	pass    #捕获到异常之后,执行的代码

运行结果:已经不抛出错误了
在这里插入图片描述

三 try…finally和嵌套

代码实例:

import time
try:
	f = open("123.txt",'r')
	try:
		while True:
			content = f.readLine()
			if len(content) == 0:
				break
			time.sleep(2)
			print(content)
	finally:
		f.close(0
		print("文件关闭")
except Exception as result:
	print("发生异常")

三 异常类型

异常名称 描述

BaseException 所有异常的基类

SystemExit 解释器请求退出

KeyboardInterrupt 用户中断执行

Exception 常规错误的基类

StopIteration 迭代器没有更多的值

StandardError 所有的内建标准异常的基类

ArithmeticError 所有数值计算错误的基类

FloatingPointError 浮点计算错误

OverflowError 数值运算超出最大限制

ZeroDivisionError 除零 (所有数据类型)

AssertionError 断言语句失败

AttributeError 对象没有这个属性

EnvironmentError 操作系统错误的基类

IOError 输入/输出操作失败

OSError 操作系统错误

WindowsError 系统调用失败

ImportError 导入模块/对象失败

LookupError 无效数据查询的基类

IndexError 序列中没有此索引(index)

MemoryError 内存溢出错误

NameError 未声明/初始化对象 (没有属性)

UnboundLocalError 访问未初始化的变量

RuntimeError 一般的运行时错误

NotImplementedError 尚未实现的方法

SyntaxError Python 语法错误

IndentationError 缩进错误

TabError Tab 和空格混用

SystemError 一般的解释器系统错误

TypeError 对类型无效的操作

ValueError 传入无效的参数

UnicodeError Unicode 相关的错误

UnicodeDecodeError Unicode 解码时的错误

UnicodeEncodeError Unicode 编码时错误

UnicodeTranslateError Unicode 转换时错误

Warning 警告的基类

SyntaxWarning 可疑的语法的警告

UserWarning 用户代码生成的警告

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

测试小姐姐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值