原标题:python错误和异常处理怎处理你知道么

异常处理

什么是异常?

首先要清楚,什么是异常,异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下

python的异常处理

异常是由错误触发的,那么错误有哪些情况呢?

1.语法错误:

在学习中有迷茫不知如何学习的朋友小编推荐一个学Python的学习q u n 227 -435- 450可以来了解一起进步一起学习!免费分享视频资料

2.逻辑错误

异常的种类

在平时编码过程中,常见的异常有以下这些:

当然,还有其他异常,这里就不做过多演示。出现异常,我们肯定想到要处理,不然程序就直接报错崩溃了。其实我们一直在处理异常,只是没有发现,比如要判断你输入的内容是不是数字,我们以前是这么判断的:

在这里if就是在处理异常,但是,如果我还有其他程序也要运行,那就要写成这样了:

这时候,你会发现,程序写的很长,可读性差,如果有十个这样的输入,那这个程序就没法看了,这时候,python提供了一种异常处理的方法try...except...

part1 基本语法

现在用这套方法来处理上面的异常,看看效果怎么样:

这样一看代码简洁了很多啊,效果很完美

part2 异常只能用来处理指定的异常情况,其他情况不会处理

我们可以试一下,把错误类型改成别的,看看会怎样:

看来错误类型还要对应才行。

part3 多分支

这时候,有人就会觉得,万能异常这么厉害,我还要写什么其他异常的,全部用这个不就好啦?这个怎么说呢,要分两点来看吧:

1.如果你想要的效果是,无论什么异常,你都直接无视或者说用一种处理机制,那么就直接用吧,没问题,

2.如果你要根据异常类型处理不同机制,那还得用多分支的方式,

当然,你可以结合多分支和万能异常一起使用啊,这样多分支的健壮性会更好、

part5 异常的其他结构

下面来看看异常处理的其他结构:

part6 主动触发异常

我们学过主动触发异常用的是raise,下面看一下能不能捕获:

part7 自定义异常

如果你想自定义一个异常,也是可以的。异常是什么,就是一个类嘛,那我们就定义一个异常类看看:

报错了,看错误提示,再看看type错误是怎么写的,原来要继承一个叫BaseException的类,再试一下:

完美了,成了。

part8 断言

断言可以说就是if的一种简写,直接看例子吧:

如果判断不正确:

这个完全可以用if写:

效果完全一样

part9 try...except...的好处和用法:

try...except...就是取代了if的那种方法,让你的代码在保证可读性的情况下,还增强了健壮性,提高了容错率,使用这种方法:

1.把错误处理和你的主逻辑分开了

2.代码更容易组织,更清晰,复杂的任务更容易实现

3.更安全了,不会因为一些小错误导致程序崩溃

但是要清楚的一点是,if和try...except...都是python中处理异常的方法,不要学了try就说if和异常处理没有关系了。其次,学完这个后发现try...except...很强大,是不是每一段代码都可以加这个处理异常,就不用管报错了,这是肯定不行的,try...except...还是要慎重使用,首先try...except是你附加给你的程序的一种异常处理的逻辑,与你的主要的工作是没有关系的,这种东西加的多了,会导致你的代码可读性变差,然后异常处理本就不是你混乱逻辑的保姆,只有在错误发生的条件无法预知的情况下,才应该加上try...except返回搜狐,查看更多

责任编辑:

python错误-python错误和异常处理怎处理你知道么相关推荐

  1. python中if错误-Python中常见的异常处理

    异常和错误 part1:程序中难免出现错误,而错误分成两种 1. 语法错误(这种错误,根本过不了Python解释器的语法检测,必须在程序执行前就改正) #语法错误示范一 if #语法错误示范二 def ...

  2. python错误-Python错误处理和异常处理

    在前面介绍Python语法的过程中,我们已经接触到了解释器给的错误和异常,但并没有详细讲解它们.现在我们就全面的来学习Python是对语法错误等错误进行定义和处理的,这包括至少有两种可以区分的错误,它 ...

  3. python语法错误修改_python基础之错误、调试(异常处理)

    在程序运行过程中,总会遇到各种各样的错误. 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的. 有的错误是用户输入造成的,比如让用 ...

  4. python中语法错误-Python语法错误与异常及异常处理方法

    回顾 在Python进阶记录之基础篇(二十)中,我们介绍了Python面向对象中的类方法和静态方法,以及类中拥有特殊功能的魔法函数.需要重点掌握类方法和静态方法的概念和基本用法,理解魔法函数的作用冰女 ...

  5. python常见错误-Python错误及异常总结汇总

    程序员的一生中,错误几乎每天都在发生.在过去的一个时期, 错误要么对程序(可能还有机器)是致命的,要么产生一大堆无意义的输出,无法被其他计算机或程序识别,连程序员自己也可能搞不懂它的意义.一旦出现错误 ...

  6. python中语法错误-Python3 错误和异常

    Python3 错误和异常 作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍. Python 有两种错误很容易辨认:语法错误 ...

  7. python中if错误-Python中错误和异常

    第1章 概念 错误 语法错误:代码不符合解释器或编译器的语法 逻辑错误:不完整或不合法的输入或者计算出现问题 异常:代码执行过程中,出现问题导致程序无法执行 程序遇到逻辑或算法问题 运行过程中计算机错 ...

  8. python错误-python异常与错误区别

    错误和异常概念 错误: 1.语法错误:代码不符合解释器或者编译器语法 2.逻辑错误:不完整或者不合法输入或者计算出现问题 异常:执行过程中出现万体导致程序无法执行 1.程序遇到逻辑或者算法问题 2.运 ...

  9. 【Python】Python错误、异常和模块(长文系列第4篇)

    系列第四篇主要讲两方面,错误和异常以及模块.在编程时遇见错误信息在所难免,Python中会也有很多种错误信息,常见的两种就是语法错误和逻辑错误,逻辑错误的种类有很多,占据了异常中大部分位置,下面就开始 ...

最新文章

  1. Django框架深入了解_05 (Django中的缓存、Django解决跨域流程(非简单请求,简单请求)、自动生成接口文档)(二)
  2. Hystrix能解决的问题
  3. STM32F1笔记(六)独立看门狗IWDG
  4. 软件可靠性指标mtbf测试评估,软件可靠性评估.pdf
  5. Golang实践录:使用gin框架实现转发功能:利用nginx转发
  6. debian下erlang新版本安装
  7. ENVI学习总结(十五)——遥感影像分类与应用
  8. 数据库学习----MySQL(一)
  9. Java基础-运行原理及变量(01)
  10. VMware12 安装 Mac OS 10.12 步骤及设置优化教程
  11. 非线性声学回声消除技术
  12. html+css+javascript+jquery+bootstarp响应式旅行社旅游平台网站模板(14页)
  13. aes key iv从mysql_OpenSSL AES 算法中 Key 和 IV 是如何生成的?
  14. No qualifying bean of type ‘com.zl.dao.UserDao‘ available:expected at least 1 bean which qualifies
  15. ubuntu16.04 安装微信客户端
  16. 超逗、雷人的冷幽默四则
  17. 标志寄存器的状态标志
  18. 深度学习中的特征(feature)指的是什么?
  19. 福彩3d开奖结果接口文档及示例分享
  20. 夜来风雨声,“路由协议”知多少?

热门文章

  1. Cython的简单使用
  2. FATE 集群部署 step2
  3. sense chrome扩展工具安装问题
  4. SQL server 行转列 列转行
  5. ZooKeeper与Eureka对比
  6. error LNK1104: 无法打开文件“ComService.lib”
  7. Leetcode::Balanced Binary Tree
  8. 《深入Linux设备驱动程序内核机制》中的mmap_demo.c例程
  9. 获取文件名和路径函数
  10. 没人教的项目管理方法之(明白该干什么) 二、项目章程如何写(上)