Home >Backend Development >Python Tutorial >Exception handling and exception type examples

Exception handling and exception type examples

PHP中文网
PHP中文网Original
2017-06-20 16:18:351284browse

Exception handling

 1 #!usr/bin/env python 2 #-*-coding:utf-8-*- 3 # Author calmyan 4  5 list_l=['g','h'] 6 data={'一':'3'} 7 try: 8     #list_l[3]#IndexError: list index out of range 9     data['2q']10 except IndexError as e:#列表下标超出边界11     print(e)12 except KeyError as e:#字典key 不存在13     print('没有这个KEY',e)14 except Exception as e:##大部分异常都可捕获15     print(e)16 else:#结合使用17     print('以上正常')18 finally:19     print('最后都要打印')

Exception type:

'''''常用异常
AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x
IOError 输入/输出异常;基本上是无法打开文件
ImportError 无法引入模块或包;基本上是路径问题或名称错误
IndentationError 语法错误(的子类) ;代码没有正确对齐
IndexError 下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]
KeyError 试图访问字典里不存在的键
KeyboardInterrupt Ctrl+C被按下
NameError 使用一个还未被赋予对象的变量
SyntaxError Python代码非法,代码不能编译
TypeError 传入对象类型与要求的不符合
UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,
导致你以为正在访问它
ValueError 传入一个调用者不期望的值,即使值的类型是正确的'''''
自定义异常
 1 #!usr/bin/env python 2 #-*-coding:utf-8-*- 3 # Author calmyan 4  5 class NewException(Exception):#继承基类异常 6     '''自定义异常信息''' 7     def __init__(self,msg): 8         self.message=msg 9 10     def __str__(self):#可不定义,基类已有11         #return self.message#返回异常信息12         return '触发自定义异常......'#13 14 try:15     raise NewException('触发自定义异常')16 except NewException as e:17     print(e)

socket communication

The above is the detailed content of Exception handling and exception type examples. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn