Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1886969
  • 博文数量: 2460
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 24729
  • 用 户 组: 普通用户
  • 注册时间: 2020-11-26 14:30
个人简介

更多python、Linux、网络安全学习内容,可移步:www.oldboyedu.com或关注\"老男孩Linux\"公众号

文章分类

全部博文(2460)

文章存档

2024年(310)

2023年(643)

2022年(693)

2021年(734)

2020年(80)

我的朋友

分类: Python/Ruby

2021-08-04 17:21:57

  当我们撰写Python代码的时候,肯定会遇到代码错误或者异常的情况,这时很多人就会问:Python中异常与错误有什么区别?如何理解呢?我们一起来看看详细的内容介绍吧。

  什么是错误?

  错误分为两种情况:第一种语法错误,代码不符合解释器或者编译器语法;第二种逻辑错误,不完整或者不合法输入或者计算出现问题。

  什么是异常?

  所谓的异常就是执行过程中出现万体导致程序无法执行,同样分为两种情况:第一种程序遇到逻辑或者算法问题;第二种运行过程中计算机错误,内存不够或者IO错误。

  Python中错误和异常有什么区别?

  错误是代码运行前的语法或者逻辑错误,语法错误在执行前修改,逻辑错误无法修改;

  而异常分为两个步骤,异常产生,检查到错误且解释器认为是异常,抛出异常;第二是异常处理,截获异常,忽略或者终止程序处理异常。

  从软件方面来说,错误是语法或者逻辑上的问题,语法错误指示软件的结构上有错误,导致不能被解释器解释或者编译器无法编译,这些错误必须在程序执行前进行纠正;当程序语法正确后,剩下的就是逻辑错误问题,逻辑错误可能是由于不完整或不合法的输入导致,在其他情况下,可能是逻辑无法生成、计算或输出结果需要的过程无法执行。这些错误通常分别被称为域错误和范围错误。

  当Python检测到一个错误时,解释器就会指出当前已经无法继续执行下去,这时就出现异常。

  而异常它是因为程序出现了错误而在正常控制流以外采取的行为,这个行为分为两个阶段:首先是引起异常发生的错误,然后是检测阶段;

  第一个阶段是在发生了一个异常条件后发生的,只要检测到错误并且意识到异常条件,解释器会引发一个异常,引发也可以叫做触发或生成,解释器通过它通知当前控制流有错误发生;

  Python也允许程序员自己引发异常,无论是Python解释器还是程序员引发的,异常就是错误发生的信号,当前流将被打断,用来处理这个错误并采取相应的操作,这就是第二个阶段。

  对异常的处理发生在第二阶段,异常引发后,可以调用很多不同的操作,可以是忽视错误,或是减轻问题的影响后设法继续执行程序,所以的这些操作都代表一种继续,或是控制的分支,关键是程序员在错误发生时可以指示程序如何执行。

  类似Python这样支持引发和处理异常的语言,可以让开发人员在错误发生时更直接地控制它们,程序员不仅仅有了检测错误的能力,还可以在它们发生时采取更可靠的补救措施。

阅读(751) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~