程序在运行的过程中,产生了异常,这时,我们可能会有两种想法,第一种是针对这个异常做某些特殊的处理来进行程序的降级处理;第二种是希望程序忽略这个异常继续执行下去,这个异常可能并不干扰主逻辑的执行。

那这个时候我们怎么办呢?

9月9日19:30,誉天樊老师继续开讲“零基础小白学Python”,一次课带你搞定Python异常处理,告别xxxxError!

1.掌握python异常处理

2.结合企业各种场景实战解决异常

3.深度剖析except异常处理机制精华

异常处理实例

我们用一个实例体会下关于try语句的要点。

  • 一个 try 语句可能包含多个except子句,分别来处理不同的特定的异常。最多只有一个分支会被执行
  • 最后一个except子句可以忽略异常的名称,它将被当作通配符使用
print("start.....")
try:x = int(input("Please enter a number: "))print("number:",x)print(100/x)print("ok....")
except ValueError:print("非纯数字错误!")
except ZeroDivisionError:print("不可以为零错误!")
except:print("可选的未知错误!")
print("end.....")

  • 一个except子句可以同时处理多个异常,这些异常将被放在一个括号里成为一个元组
print("start.....")
try:x = int(input("Please enter a number: "))print("number:",x)print(100/x)print("ok....")
except (ValueError,ZeroDivisionError):print("非纯数字或不可以为零错误!")
except:print("可选的未知错误!")raise   #重新抛出这个异常
print("end.....")

抛出异常(自行抛出异常)

Python 使用 raise 语句抛出一个指定的异常。例如:

>>> raise NameError('HiThere')
Traceback (most recent call last):File "<stdin>", line 1, in ?
NameError: HiThere

  • raise 唯一的一个参数指定了要被抛出的异常。它必须是一个异常的实例或者是异常的类(也就是 Exception 的子类)。
  • 如果你只想知道这是否抛出了一个异常,并不想去处理它,那么一个简单的 raise 语句就可以再次把它抛出。
>>> try:raise NameError('HiThere')except NameError:print('An exception flew by!')raiseAn exception flew by!
Traceback (most recent call last):File "<stdin>", line 2, in ?
NameError: HiThere

python raise语句_Python异常处理,告别xxxxError!相关推荐

  1. python raise语句_python中异常报错的分析处理

    想必到现在经过python基础的学习之后,小伙伴们都已经开始写很多脚本了,有大的有小的,但是有的时候并不是所写的能够顺利跑出结果来,期间会有不但的报错以及异常,很多我们都不理解,所以也就不会修改,这是 ...

  2. 中raise抛出异常_Python 异常处理知识点汇总,五分钟就能学会 !

    异常处理在任何一门编程语言里都是值得关注的一个话题,良好的异常处理可以让你的程序更加健壮,清晰的错误信息更能帮助你快速修复问题.在Python中,和不分高级语言一样,使用了try/except/fin ...

  3. python raise函数_Python raise用法

    有读者可能会问,编写代码时能否手动抛出一个异常吗?答案是肯定的,Python 允许程序自行引发异常,使用 raise 语句即可. 异常是一种很"主观"的说法,以下雨为例,假设大家约 ...

  4. python raise用处_python基础教程python raise的基本使用

    简介 当程序出现错误,python会自动引发异常,也可以通过raise显示地引发异常.一旦执行了raise语句,raise后面的语句将不能执行. 1.演示raise用法 try: s = None i ...

  5. python异常数据处理_Python 异常处理和捕获信息教程

    在学习了Python的基础数据类型和它们的相关操作方法之后,要学习的另外一个重点知识是 Python异常. 我们经常在编写程序和调试代码的过程中,有发生一些错误,为了处理和提醒用户这些错误,Pytho ...

  6. python的语句_Python的简单语句

    Python的简单语句包括: 1.表达式语句:主要用于交互式计算一个表达式的值,或用于过程的调用. 2.赋值语句:用于将名称绑定到值,或者修改对象的属性. 3.扩展的赋值语句:将二元运算符和赋值语句结 ...

  7. python入门语句_Python 快速入门笔记(5):语句

    本系列随笔是本人的学习笔记,初学阶段难免会有理解不当之处,错误之处恳请指正.转载请注明出处: https://www.cnblogs.com/itwhite/p/12297769.html. 简介 p ...

  8. python清空语句_python有趣语句

    python 赋值语句 python中的语句: 赋值语句 if语句,当条件成立时运行语句块.经常与else, elif(相当于else if)配合使用. for语句,遍列列表.字符串.字典.集合等迭代 ...

  9. python打印语句_Python 打印语句

    Python 打印语句 首先申明下,本文为笔者学习<Python学习手册>的笔记,并加入笔者自己的理解和归纳总结. 1.print语句用来打印,并在行的末尾添加一个换行.>>& ...

最新文章

  1. oracle:instance与database,启动过程
  2. 在maven中开发Spring需要的jar依赖
  3. html5 observer api,基于HTML5新特性Mutation Observer实现编辑器的撤销和回退操作
  4. c++怎么实现数字数组的删除数字_C/C++数据结构:栈结构解析,最简单解析,让你一遍就会...
  5. 分布式系统:数据库、操作系统、集群、协调、接口、多处理器、共享、I/O
  6. 灰度资产管理总规模突破420亿美元
  7. 启动项目的时候报驱动错误: not support oracle driver 1.0
  8. C++11 std::ref()
  9. SVN配置花生壳远程访问
  10. 微信小程序常见面试题及答案
  11. Matlab-香农编码
  12. pandas之DataFrame常用方法
  13. outlook客户端 outlook.com邮箱设置方法
  14. 可用于微信公众平台的机器人
  15. redis appendonly.aof文件损坏修复方法
  16. 黑群晖USB直连计算机,群辉(黑群辉)自动/定时备份U盘数据到硬盘内--原创
  17. 寻求公正是一种心理病
  18. c语言程序设计期末试题B答案,兰大《C语言程序设计》19秋学期在线考核试题
  19. 初试 RabbitMQ采坑记录:org.springframework.amqp.AmqpIOException: java.io.IOException
  20. KeePass Password Safe(互联网密码管理器软件)官方中文版V2.48.1 | 密码管理工具哪个好用?

热门文章

  1. Go语言的IO库那么多,我该怎么选?
  2. RabbitMQ——work queue
  3. 什么是序列化和反序列化
  4. React的组件模式 1
  5. 1.1 Python 安装
  6. Angular 自动编译部署 Tomcat Jboss
  7. Struts2 自定义验证器
  8. ecmall挂件开发
  9. 算法高级(25)-分布式TopN算法玄机
  10. c#同时上传文件和参数,Java接收的完整教程,炒鸡简单!网上的教程弱爆了!