首页 > 编程语言 >Python_16异常处理

Python_16异常处理

时间:2022-08-31 16:11:06浏览次数:63  
标签:Exception num1 16 Python except try print 异常

一、异常处理基本概念
异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件)如:文件找不到、网络连接失败、非法参数等。异常是一个事件,它发生在程序的运行期间,干扰了正常的指令流程。
一般情况下,在Python无法处理程序时就会发生一个异常,异常是Python的对象,表示一个错误,当python脚本发生异常时,我们就需要捕获处理它,否则程序会终止执行。
在Python中,所有的异常类都是基类Exception的成员。所有异常都从基类Exception继承,而且都是在exceptions模块中定义。python自动将所有的异常名称放在内建的命名空间中,所以程序不必导入Exception模块即可使用异常。
捕获异常可以使用try/except语句,try/except语句用来监测try语句快中的错误,从而让except语句捕获异常信息并处理。如果你不想在异常发生时结束你的程序,只需在try里捕获它。

 

1、try/except
异常捕捉可以使用 try/except 语句。

 1 #异常处理概念及基本使用2022.08.17PM23:15
 2 try:
 3     num1 = input('请输入num1:  \n')
 4     num2 = input('请输入num2:  \n')
 5     s = int(num1)+int(num2)
 6     print('和为:'+str(s))
 7 except ValueError as e:   #Python3系列中 e= ValueError()
 8     print('error:输入非法,原因是:'+str(e))
 9 
10 print('hello')

2、try/except...else

try/except 语句还有一个可选的 else 子句,如果使用这个子句,那么必须放在所有的 except 子句之后。
else 子句将在 try 子句没有发生任何异常的时候执行。

 1 #异常处理概念及基本使用2022.08.17PM23:15
 2 try:
 3     num1 = input('请输入num1:  \n')
 4     num2 = input('请输入num2:  \n')
 5     s = int(num1)+int(num2)
 6     print('和为:'+str(s))
 7     lista = [1,2,3,4]
 8     print(lista[3])
 9 except ValueError as e:   #Python3系列中 e= ValueError()
10     print('error:输入非法,原因是:'+str(e))
11 except IndexError as e:
12     print('error:列表访问异常,原因是:'+str(e))
13 except Exception as e:    #如果无法定位原因,可是使用Exception,因为它是所有异常类的父类,但一般把Exception放在最后
14     print('error:系统异常')
15 else:
16     print('代码不报错就执行')
17 
28 print('hello')

3、try-finally 语句
无论是否发生异常都将执行最后的代码

 1 #异常处理概念及基本使用2022.08.17PM23:15
 2 try:
 3     num1 = input('请输入num1:  \n')
 4     num2 = input('请输入num2:  \n')
 5     s = int(num1)+int(num2)
 6     print('和为:'+str(s))
 7     lista = [1,2,3,4]
 8     print(lista[3])
 9 except ValueError as e:   #Python3系列中 e= ValueError()
10     print('error:输入非法,原因是:'+str(e))
11 except IndexError as e:
12     print('error:列表访问异常,原因是:'+str(e))
13 except Exception as e:    #如果无法定位原因,可是使用Exception,因为它是所有异常类的父类,但一般把Exception放在最后
14     print('error:系统异常')
15 else:
16     print('代码不报错就执行')
17 finally:
18     print('我一直执行')     #不管报不报错一直执行
19 
20 print('hello')

4、raise自定义异常
通过创建一个新的异常类,程序可以命名它们自己的异常。异常应该是典型的继承自Excetion类,通过直接或间接继承的方式。自定义异常使用raise语句引发,而且只能通过人工方式触发。

 1 #自定义异常,至此Python基本语法全部学完
 2 class LoginError(Exception):
 3     def __init__(self,name,password):
 4         self.name = name
 5         self.password = password
 6 try:
 7     userName = input('请输入用户名:\n')
 8     passWord = input('请输入密码:\n')
 9     if(userName != 'admin' or passWord != '123456'):
10         raise LoginError(userName,passWord)
11     else:
12         print('登录成功')
13 except LoginError as e:
14     print('您输入的用户名:{} 或密码:{}出错'.format(e.name,e.password))
15 except Exception as e:
16     print('系统异常')
17 
18 #系统自带异常:预定义异常解决系统逻辑上的错误,自定义异常:业务逻辑上的错误

标签:Exception,num1,16,Python,except,try,print,异常
From: https://www.cnblogs.com/yyym/p/16643111.html

相关文章

  • Python 自动化测试(四):数据驱动
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取在实际的测试工作中,通常需要对多组不同的输入数据,进行同样的测试操作步骤,以验证我们的软件质......
  • Python 自动化测试(五): Pytest 结合 Allure 生成测试报告
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取霍格沃兹出品《测试开发实战进阶》课程,资深测试架构师、开源项目作者亲授BAT大厂前沿......
  • python的反射
    反射--getattr 反射:用字符串数据类型的名字,来操作这个名字对应的函数/实例变量/绑定方法/各种方法......
  • Python_15面向对象
    一、面向对象概念和基本语法类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。方法:类中定义的函......
  • Python 测试开发实战进阶,技能对标阿里 P6+,挑战年薪 50W+!
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取软件测试行业正处于大变革时期,在互联网业务快速迭代和质量保障要求下,各种新技术层出不穷,测试......
  • Python 测试开发 20+ 项目实战,提升 5 大测试核心技能
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取软件测试行业从业门槛越来越高,传统手工测试人员逐渐被淘汰,而测试开发工程师则供不应求,成为B......
  • Python学习-Day2
    1、算数运算符/除10/20=0.5//取整数25//10=2%取余数25%10=5"幂 2"4=16*在字符串中计算结果就是字符串重复指定次数的结果eg:......
  • Python代码模板
    #!/usr/bin/envpython#-*-encoding:utf-8-*-classClassName:def__init__(self,arg1,arg2):self.arg1=arg1self.arg2=arg2......
  • 安卓手机手机用 QPython 写 Python:hello world
    1.安装QPython在应用市场中搜索QPython,搜到以后进行安装。我装过了,所以上图显示“打开”,你可能显示“安装”,点击即可。需要设置存储权限,方便在手机上存代码。......
  • centos7 安装python-libpcap
    1.安装依赖yuminstalllibpcaplibpcap-devel2.安装python依赖(python3.6以上版本)$pip3installCython$pip3installpython-libpca3.验证在python命令行......