错误

分为语法错误和逻辑错误,如下:

语法错误指示软件的结构上有错误,导致不能被解释器解释或编译器编译。

逻辑错误可能是由于不完整或是不合法的输入所致,或者是无法生成、计算、或是输出结果需要的过程无法执行。

异常

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

描述:异常是因为程序出现了错误而在正常控制流以外采取的行为。该行为分为两个阶段:

第一个阶段:引起异常发生的错误;在发生了一个异常条件后发生的。只要检测到错误并且意识到异常条件,解释器就会引发一个异常;

第一个阶段:检测和采取可能的措施阶段。

python中的异常

1、NameError:尝试访问一个未声明的变量

2、ZeroDivisionError:除数为零

3、SyntaxError:解释器语法错误

4、IndexError:请求的索引超出序列范围

5、KeyError:请求一个不存在的字典关键字

6、IOError:输入/输出错误

7、AttributeError:尝试访问未知的对象属性

检测和处理异常

try语句有两种主要形式:

try-except和try-finally。

try:
  try_suite #监控这里的异常

except Exception[, reason]:

  except_suite #异常处理代码

finally子句

finally子句是无论异常是否发生,是否捕捉都会执行的一段代码。

try:

  A

except MyException:

  B

else:

  C

finally:

  D

有异常执行:A-B-D 无异常执行A-C-D

python之错误和异常的更多相关文章

  1. python的错误和异常

    python错误和异常 错误 错误分为语法错误和逻辑错误 语法错误 >>> if File "<stdin>", line 1 if ^ Syntax ...

  2. python 常见错误和异常 函数 正则表达式及多线程编程

    生成随机密码#!/usr/bin/env python import stringfrom random import choice def gen_pass(num=9): all_chs = st ...

  3. python常见错误和异常

    1.BaseExeception 所有异常的基类 2.SystemEixt 解释器请求退出 3.KeyboardInterrupt 用户中断执行 4.Exception 常规错误的基类 5.StopI ...

  4. 关于Python中的错误与异常,你是否了解的够仔细?

    每次版本结束都描述这着同样的错误,相似的问题,但始终没见解决.所以今天,我就来总结下Python的错误与异常! 异常与错误 错误 语法错误 可以通过IDE或者解释器给出提示的错误 opentxt('a ...

  5. Python错误和异常学习

    一:错误解释 1.语法错误:代码不符合解释器或者编译器语法 2.逻辑错误:不完整或者不合法输入或者计算出现问题 代码运行前的语法或者逻辑错误,语法错误在执行前修改,逻辑错误无法修改 二:异常 执行过程 ...

  6. Python学习笔记七-错误和异常

    程序员总是和各种错误打交道,学习如何识别并正确的处理程序错误是很有必要的. 7.1错误和异常 1.错误 从软件方面来看,错误分为语法错误和逻辑错误两种.这两种错误都将导致程序无法正常进行下去,当Pyt ...

  7. Python 错误和异常

    1.Python异常类 Python是面向对象语言,所以程序抛出的异常也是类.常见的Python异常有以下几个,大家只要大致扫一眼,有个映像,等到编程的时候,相信大家肯定会不只一次跟他们照面(除非你不 ...

  8. Python学习_07_错误、异常

    地毯式地过语法终于快要结束了... Python中的常见异常 1.NameError:尝试访问一个未初始化的变量 2. ZeroDivisionError:除数为0 3. SyntaxError:Py ...

  9. Python学习 Part6:错误和异常

    Python学习 Part6:错误和异常 两种不同类型的错误:语法错误和异常 1. 语法错误 语法错误,也被称作解析错误: >>> while True print('Hello w ...

随机推荐

  1. @property? @property?说说他身后的事情。

    @property 后面可以有哪些修饰符? 1.线程安全的       aaomic.nonatomic 2.访问权限的       readonly.readwrite 3.内存管理(ARC) as ...

  2. hdu 2088

    ps:  超级超级水的一道题....就是格式问题要注意... 除了第一个数据,其他的每个数据都要有个空行比如: 4 1 2 3 4 3 4 //这是空行 1 2 3 4 3 4 //这是空行 代码: ...

  3. Android 与Unity交互之Toast消息

    Toast.makeText(MainActivity.this,message.obj.toString(),Toast.LENGTH_SHORT).show();这一句代码不能直接放在 publi ...

  4. 常见类型,isset(),empty()判断

    <?php $a = NULL; var_dump($a);                  //NULL,[false],true var_dump(isset($a)); var_dump ...

  5. Java输入一行数据并转存到数组中

    直接看下面的代码吧!主要是split和foreach的使用 import java.io.*; import java.util.*; public class Main{ public static ...

  6. 听课程C# Intermediate: Classes, Interfaces and OOP的笔记,持续修改更新ing

    在第二章第7节中,我尝试并给我的Vistal Studio 2015加装了Resharper,感觉非常好用,现在就分享下我的一点心得. 首先为了防止Resharper的快捷键失灵,可以先重置所有的 V ...

  7. MySql使用游标Cursor循环(While)更新数据

    #要修改的变量 DECLARE var_ID VARCHAR(50) DEFAULT ''; #需要修改的数据的数量 DECLARE var_UpdateCount INT; #当前循环次数 DECL ...

  8. ios9-通讯录

    在以往的ios开发中,开发者需要获取用户的通讯录信息的时候,往往要使用AddressBook.frame框架,该框架是纯C语言的API,在开发过程中,还需要开发者手动的管理内存,这对于新进开发者很难理 ...

  9. javascript常用数组算法总结

    1.数组去重 方法1: JavaScript //利用数组的indexOf方法 function unique (arr) { var result = []; for (var i = 0; i & ...

  10. Winscp sftp远程linux服务器需要预设密码,怎么解决

    需要在root账户下修改/etc/ssh/sshd_config 文件中PermitEmptyPasswords no改成yes