python学习-基础-异常处理

异常:

  • 异常(exception):因运行时错误而出现,会产生一个traceback
  • “traceback”是出现的运行时错误的一个详细描述

常见异常:(待完善)

  • 数据不符合期望的格式时会出现ValueError
  • 数据无法正常访问时会出现IOErroe(例如,可能你的数据文件被移走或者重命名)
  • NameError ,调用的变量名称不存在

处理异常:

  • try/except语句提供了一个异常处理机制,从而保护可能导致运行时错误的某些代码
  • pass语句就是python的空语句或null语句,它什么也不做

try:

  code  #可能出现异常需要保护的语句(可以是多行)

except:  #冒号前可以加具体的error名称,来排除具体的异常,如ValueError

  pass    #如果出现一个运行时错误,或执行这个语句(无论运行时发生了什么,try语句会捕获所有异常并处理,用pass忽略掉这个错误)

finally

1 try:
2     print(‘abc‘)
3     print(abc)  #没有变量abc,所以此处会报NameValue
4     print(‘1‘)    #上面遇到异常了,便不会执行这一行了,直接执行except后面的内容
5 except NameError:
6     pass
7 finally:
8     print(‘2‘)  #无论try/except之间的代码正常运行还是出现异常都会执行finally组,不管异常是不是NameError,总之,finally组的内容总会运行。

输出:

abc
2

展示错误的内容

上面代码并不会显示真正发生了什么异常

try:
    print(‘abc‘)
    print(abc)
    print(‘1‘)
except NameError as err:       #将错误内容赋予变量str
    print(‘Error is‘,str(err))        #要加上str将err的类型转为字符串
finally:
    print(‘2‘)                

输出:

abc
Error is name ‘abc‘ is not defined
2
时间: 2024-09-28 22:55:30

python学习-基础-异常处理的相关文章

Python学习基础篇第一篇——快速入门(适合初学者)

一.Python学习基础篇第一篇--(快速入门) 建议从Python2.7开始学习,Python2.7可以支持扩展大量的第三方类库,是目前比较成熟的版本 编写代码的软件推荐将python自带的IDLE和PyCharm集成IDE结合起来使用 1.1 Python命令行 Python命令行将以 >>> 开始,比如 >>>print 'Hello World!' 对于验证简单的命令可以在python自带的IDLE中完成  1.2 在Python自带的IDLE写一段小程序 在所

《转》python学习--基础上

学习的python本来想自己总结,但是发现了一篇不错的大牛的博客,拿来主义,,又被我实践了 关于前两篇如果总结的不详细,因此把他人的转载过来 http://www.cnblogs.com/BeginMan/archive/2013/04/12/3016323.html 一.欲练此功,必先自宫 从现在起,就开始真正地接触她了,或许很多人像我一样,不知道如何去快速掌握一门新的编程语言,今天贴出来一些建议,方便大家看看,这也是学习之前的十分重要的事情.虽然"欲练此功,必先自宫"太夸张,但是在

Python开发基础----异常处理、socket套接字基础1

异常处理 错误 程序里的错误一般分为两种: 1.语法错误,这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正 2.逻辑错误,人为造成的错误,如数据类型错误.调用方法错误等,这些解释器是不会进行检测的,只有在执行的过程中才能抛出的错误 异常 异常是python解释器在运行程序的过程中遇到错误所抛出的信息,如: Python异常种类: 常用异常: 1 AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x 2 IOError 输入/输出异

Python学习-基础篇1

一.变量: 1)变量定义规范: #1. 变量名只能是 字母.数字或下划线的任意组合#2. 变量名的第一个字符不能是数字#3. 关键字不能声明为变量名['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda',

python学习基础篇(一)

一:机器码和字节码 机器码计算机能够直接识别,字节码计算机不能直接识别. 高级语言:例如Python java c# php c++(字节码) 低级语言:c,汇编(机器语言) 二:语言之间的对比 java的执行效率比Python的执行效率高,但比Python的开发效率低. PHP类:适合于写网页 Python,java:可以写网页,也可以写后台 三:Python基础 python种类:jpython javascriptpython  pypy(cpython开发的Python) python的

python学习-基础和运算符

接下来是第二天的学习,关于基础和运算符部分,先放思维导图: while循环 (1)while循环,写完条件判断后加冒号":",再另起一行空4个空格写循环具体逻辑 while True: print('人生苦短,我也有python') 执行结果,将循环打印: 此外python中while有pass的写法,直接跳过本次循环,直接java中好像是没有. # 添加pass的写法,执行到pass,直接过,java中好像没有pass的写法 count = 0 while count < 10

python学习-基础-day1

17年4月中旬在51cto上报名了老男孩PYTHON高级自动化开发的课程,此随笔为记录学习中的有意义的东西(自我感觉有意义) 一.pycharm的基本配置与使用 之前自学过一段时间,一直用的自带的IDLE和notepad++,现在开始用pycharm,但是很不熟悉,随着使用不断补充和修改 开始可以设置字体.样板等,网上都很容易搜到 1.setting--editor--file and code template ,找到Python script,可以为新建的Python文件定义模板,只有再次新

3.python语法基础-异常处理

3.异常处理代码示例(以代码为基础来归纳) ---------------------------------------------------------------------------------------------------------------------------------- # coding:utf8 ''' 3.异常处理实例 ''' import time from __builtin__ import IndentationError ##异常的用法 异常用IO

python学习:基础概念

Python 包管理工具解惑 python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到相当疑惑(嗯,是困惑).主要表现在下面几个方面: 这几个包管理工具有什么不同? * distutils * setuptools * distribute * disutils2 * distlib * pip 2. 什么时候该用pip,什么时候该用 setup.py ,它们有关系么? 3. easy_install . ez_setup.py . setup.py . se