Python 捕获异常
Python捕获异常
一.常见异常
1.语法错误:SyntaxError:invalid syntax
(1)案例:
(1)解决方法:
①查看代码有没有红色波浪线
②熟悉python基本语法
2.变量名不存在:NameError:name 'b' is not defined
(1)案例:
(2)解决方法:
①检查对应的变量名是否有定义并赋值,是否写错了变量名称
3.索引错误:IndexError: list index out of range
(1)案例:
(2)解决方法:
①检查lis对象索引选择是否超出了本来的长度
4.关键字错误:KeyError: 'c'
(1)案例:
(2)解决方法:
①检查字典里是否存在这个key值
5.类型错误:TypeError: list indices must be integers, not str
(1)案例:
(2)解决方法:
①检查清楚数据类型是否有误
6.参数传值错误:ValueError: invalid literal for int() with base 10: 'ab'(主要发生在函数里面)
(1)案例:
(2)解决方法:
①弄清楚形参的数据类型
②再传对应形参的数据类型
7.属性错误:AttributeError: A instance has no attribute 'acc'
(1)案例:
(2)解决方法:
①检查类里是否存在这个被调用的方法
②一般不能自动匹配出方法的多半有问题
8.输入输出错误:IOError
(1)案例:
(2)解决方法:
①找到代码中关于输入输出的相关操作
②检查文件路径和名称对不对
二.常见异常总结
1.SynataxError:语法错误
2.NameError:试图访问的变量名不存在
3.IndexError:索引错误,使用的所以你不存在,常为索引超出序列范围
4.KeyError:使用了映射中不存在的关键字(键)时引发的关键字错误
5.TypeError:类型错误,内建操作或是函数应于在错误类型的对象时会引发类型错误
6.ValueError:值错误,传给对象的参数类型不正确,例如给int()函数传入了字符串数据类型
7.AttributeError:属性错误,特性引用和赋值失败时会引发属性错误
8.IOError:输入输出错误
异常不局限于以上八中,这只是很常见的八种异常
三.捕获异常
1.try...except组合语法
(1)代码:
try:
正常的操作
except:
发生异常,执行这块代码
(2)案例:
2.try...except...else组合语法
(1)代码:
try:
正常的操作
except:
发生异常,执行这块代码
else:
如果没有异常,执行这块代码
(2)案例:
3.try...except...except(多个异常处理)
(1)代码:
try:
正常的操作
except A:
发生异常A,执行这块代码
except B:
发生异常B,执行这块代码
except:
发生其它异常,执行这块代码
else:
如果没有异常,执行这块代码
(2)案例:
4.try...except(A,B)(一次捕获多个异常)
(1)代码:
try:
正常的操作
except(A,B):
发生异常A和B,执行这块代码
(2)案例:
5.try...except...finally组合语法:(try...finally也可以)
(1)代码:
try:
正常的操作
except:
发生异常,执行这块代码
else:
如果没有异常,执行这块代码
finally:
不管有没有异常,都执行这块代码
(2)案例:
6.try...except(嵌套)
(1)代码:
try:
正常的操作
try:
正常的操作
finally:
不管有没有异常,都执行这块代码
except A:
发生异常,执行这块代码
(2)案例:
四.处理异常(在脚本执行不成功时,我们希望能把信息打印出来)
1.如果已经知道会发生什么异常:
2.不知道会发生什么异常(万能的)---------所有的异常都继承Exception
<div id="blog_post_info">
Python 捕获异常相关推荐
- Linux:python捕获异常,模板,文件以及数据存储
一·异常 异常是什么: 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行. 一般情况下,在Python无法正常处理程序时就会发生一个异常. 异常是Python对象,表示一个错误. ...
- python捕获异常 主动抛出异常
# 捕获异常 # DATE: 20190706 # DESCRIPTION: 捕获异常(try except)try:num = int(input("please input an int ...
- python捕获异常 程序退出_python3退出程序sys.exit()方法
1. sys.exit() 执行该语句会直接退出程序,这也是经常使用的方法,也不需要考虑平台等因素的影响,一般是退出Python程序的首选方法. 该方法中包含一个参数status,默认为0,表示正常退 ...
- python捕获异常后处理_python异常捕获处理
一.异常处理 在程序运行过程中,总会遇到各种各样的错误.程序一旦出错就停止运行了,此时就需要捕捉异常,通过捕捉到的异常,我们再去做对应的处理 写一个函数,实现除法运算 def calc(a,b): r ...
- python捕获异常装饰器_python异常装饰器--比较全的版本了
#异常捕获装饰器(亦可用于类方法) def try_except_log(f=None, max_retries: int = 5, delay: (int, float) = 1, step: (i ...
- python数字类型转换函数_Python的数据类型转换函数
玩蛇网这篇文章给大家介绍关于,Python数据类型的转换函数. Python提供了一些可以把某个值从一种数据类型,转换成为另一种数据类型的内置函数和方法.int函数可以将任何可以转换为整型的值转换为整 ...
- python类型转换-Python的数据类型转换函数
玩蛇网这篇文章给大家介绍关于,Python数据类型的转换函数. Python提供了一些可以把某个值从一种数据类型,转换成为另一种数据类型的内置函数和方法.int函数可以将任何可以转换为整型的值转换为整 ...
- python基础常用语句-Python基本语句
在学习W3Cschool python高级教程之前,大家接触过许多python语句,在本文中我们将Python一些基本的常用语句做了汇总,并简单介绍下这些python常用语句的用途和标准格式,放在一起 ...
- python基础常用语句-Python语言的一些基本常用语句
(1).赋值:创建变量引用值 a,b,c="aa","bb","cc" (2).调用:执行函数 log.write("spam,n ...
最新文章
- OKR 怎么突然火起来了?
- 数据查询分页 获取总数时间太长_干货:SQL Server 查询语句
- 《计算机网络-自顶向下方法》之什么是因特网?
- hdu1978(递推dp)
- 重写Object类的equals方法
- 51822模拟ble广播-理论
- Google Chrome 总提示flash插件过期,用命令行模式解决
- Excel2013的PowerView报表
- xshell密码保存位置_一键安装宝塔面板后哪里找账号密码?
- ecshop getRow getAll getOne 返回值的区别
- Atitit 理解Monad attilax总结Atiti
- 神经网络模糊pid控制算法,模糊神经网络应用实例
- 有一份好看的简历,面试都要加分,推荐好看的简历来这里下载
- 脉歌蓝牙耳机线评测_性能均衡的真无线降噪耳机 脉歌MT-70开箱评测
- TDA2030功放电路图
- axure 鼠标样式_Axure菜单导航怎么添加鼠标选中变色的特效?
- QCC3040---uart configuration
- Quick Viewer 快速浏览器
- 游安军编著的计算机数学答案,计算机数学
- configure报错
热门文章
- Linux中断子系统-通用框架处理
- 一文带你了解V4L2
- Linux 内核通知链和例程代码
- ESP32 分区介绍
- bootscripttable前端排序无效_前端你应该知道的八条bug分享给你们
- STM32项目(三)——通用LIN控制器
- 五、深入理解Mybatis中的参数parameterType (传递一个简单参数,传递多个参数:@Param、使用自定义对象、按位置、使用Map)
- python web框架基础
- LeetCode 774. 最小化去加油站的最大距离(极小极大化 二分查找)
- LeetCode MySQL 1398. 购买了产品A和产品B却没有购买产品C的顾客