python 异常处理 实例_Python 异常处理(示例代码)
一、异常概念
Python在执行代码之前,会进行语法检查,如果语法出错了,会抛出语法错误(SyntaxError)。
Python程序运行期间检测到的错误被称为异常。
内置异常:
BaseException:所有异常的基类
错误类异常(发生之后,如果不捕获,将会导致程序终止):
SystemExit:解释器请求退出
KeyboardInterrupt:用户中断执行(通常是输入^C)
Exception:常规错误的基类
StopIteration:迭代器没有更多的值
ZeroDivisionError:除(或取模)零 (所有数据类型)
AssertionError:断言语句失败
AttributeError:对象没有这个属性
NotImplementedError:尚未实现的方法
SyntaxError:Python 语法错误
警告类异常(打印出警告信息,使用warnings模块调用,而不是使用raise抛出,不会中断程序的正常执行):
Warning:警告的基类
DeprecationWarning:关于被弃用的特征的警告
import warnings
warnings.warn("新的版本将会弃用", DeprecationWarning)
UserWarning:用户代码生成的警告
import warnings
warnings.warn("用户的忠告", UserWarning)
二、异常相关语句
assert(断言)
assert bool表达式, 字符串
# 示例:
assert True, ‘断言失败‘
raise语句(抛出异常)
raise 异常对象实例
# 示例:
raise Exception(‘程序员抛出的异常‘)
try语句(捕获异常)
try-except
try-except-except(任意多个except)
try-except-else
try-except-finally
try-except-else-finally
三、捕获异常
try语句
四、抛出异常
raise语句
五、自定义异常
继承自Exception类
自定义的异常类可以为空
class MyExcpet(Exception):
pass
也可以重写父类的__init__和__str__方法
class MyExcpet(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return repr(self.value)
classMyExcpet(Exception):"""我自己的自定义异常"""
def __init__(self, value):
super(MyExcpet, self).__init__()
self.value= value #异常提示信息
def __str__(self):return __class__.__name__ + ‘ ‘ +repr(self.value)try:raise MyExcpet(‘我的异常发生了‘)exceptMyExcpet:print(‘自己的异常,自己捕获‘)exceptException as ex:print(‘捕获很多类型的异常‘)except:print(‘所有未知的异常‘)
python 异常处理 实例_Python 异常处理(示例代码)相关推荐
- python图像处理实例_python 图像处理(示例代码)
Pillow是Python里的图像处理库(PIL:Python Image Library),提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作 ...
- python tkinter实例_Python tkinter模版代码实例
这篇文章主要介绍了Python tkinter模版代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 import tkinter i ...
- python定时器库_python定时器示例代码
参考Python邮件列表: http://mail.python.org/pipermail/tutor/2004-November/033333.html 实现定时器最简单的办法:循环中间嵌time ...
- python线性回归实例_python线性回归示例
版权声明:本文为博主原创文章,未经博主允许不得转载.https://blog.csdn.net/haluoluo211/article/details/78761466 下面给出sklearn 库线性 ...
- python线性回归实例_python 线性回归示例
说明:此文的第一部分参考了这里 用python进行线性回归分析非常方便,有现成的库可以使用比如:numpy.linalog.lstsq例子.scipy.stats.linregress例子.panda ...
- python多进程间通信_python多进程间通信代码实例
python多进程间通信代码实例 这篇文章主要介绍了python多进程间通信代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 这里使用pipe ...
- python代码翻译-用python实现百度翻译的示例代码
用python实现百度翻译,分享给大家,具体如下: 首先,需要简单的了解一下爬虫,尽可能简单快速的上手,其次,需要了解的是百度的API的接口,搞定这个之后,最后,按照官方给出的demo,然后写自己的一 ...
- Python API 撰写的 TensorFlow 示例代码
Python API 撰写的 TensorFlow 示例代码 import tensorflow as tf import numpy as np # 使用 NumPy 生成假数据(phony dat ...
- python代码翻译器-用python实现百度翻译的示例代码
用python实现百度翻译,分享给大家,具体如下: 首先,需要简单的了解一下爬虫,尽可能简单快速的上手,其次,需要了解的是百度的API的接口,搞定这个之后,最后,按照官方给出的demo,然后写自己的一 ...
最新文章
- 这个冬天,将是共享单车最艰难的时刻
- 协同OA对业务和管理进行流程的梳理
- 春节红包大战7年,BAT的变与不变
- 关于手机的,发送验证码,正则
- 使用pull解析XML文件
- R语言观察日志(part23)--bibliometrix包
- SSH整合注解版(Spring+Struts2+Hibernate)
- GC基本算法及C++GC机制
- SpringBoot项目的 pom.xml第一行报错
- i2c传输距离_使用 ToF 传感器进行距离测量和手势识别的基本原理
- 游戏筑基开发之回调函数(C语言)
- 查看 Python 内置函数的方法
- 深透研究病毒3—威金病毒
- 电脑网速慢怎么办?手把手教你提升网速
- 支付宝生活号开发配置
- web服务器性能排名,主流Web服务器性能测试
- Android开发是简单的「能写应用就行」吗?复习指南
- 链表详解(单链表、双向链表、链表逆序)
- hive 正则表达式 过滤字符串里的中文
- ChatGPT到底是个啥 - 它甚至会和狗说话
热门文章
- .NET Core的日志[2]:将日志输出到控制台
- 最基础的绑定服务步骤
- Excel 2007 (Excel.Application) Workbooks.Add 出现内存不够的解决办法
- 使用单独的解决方案(类库)来开发DNN的模块,并安装、制作.dnn文件-VB版本(1)...
- Document 对象的常用方法
- 电网机巡智能管控平台渗透测试经历
- 数据库设计性能与效率
- Springboot 日志、配置文件、接口数据如何脱敏?老鸟们都是这样玩的!
- 美团五大最受欢迎的开源项目!
- 讲解 Redis 的一篇深度好文!