python raise的基本使用


Posted in Python onSeptember 10, 2020

简介

当程序出现错误,python会自动引发异常,也可以通过raise显示地引发异常。一旦执行了raise语句,raise后面的语句将不能执行。

1、演示raise用法

try:
  s = None
  if s is None:
    print("s 是空对象")
    # 如果引发NameError异常,后面的代码将不能执行
    raise NameError
  # 这句不会执行,但是后面的except还是会走到
  print(len(s))
except TypeError:
  print("空对象没有长度")
 
s = None
if s is None:
  raise NameError
# 如果不使用try......except这种形式,那么直接抛出异常,不会执行到这里
print("is here?")

2、触发异常

我们可以使用raise语句自己触发异常

raise语法格式如下:

raise [Exception [, args [, traceback]]]

语句中 Exception 是异常的类型(例如,NameError)参数标准异常中任一种,args 是自已提供的异常参数。

最后一个参数是可选的(在实践中很少使用),如果存在,是跟踪异常对象。

3、实例

一个异常可以是一个字符串,类或对象。 Python的内核提供的异常,大多数都是实例化的类,这是一个类的实例的参数。

def mye(level):
  if level < 1:
    raise Exception("Invalid level!")
    # 触发异常后,后面的代码就不会再执行
 
try:
  # 触发异常
  mye(0)
except Exception as err:
  print(1, err)
else:
  print(2)

以上就是python raise的基本使用的详细内容,更多关于python raise的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
如何使用python爬取csdn博客访问量
Feb 14 Python
python dict 字典 以及 赋值 引用的一些实例(详解)
Jan 20 Python
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
Feb 14 Python
老生常谈Python基础之字符编码
Jun 14 Python
浅析python3中的os.path.dirname(__file__)的使用
Aug 30 Python
Python爬虫之UserAgent的使用实例
Feb 21 Python
python实现QQ批量登录功能
Jun 19 Python
详解pandas中MultiIndex和对象实际索引不一致问题
Jul 23 Python
以SQLite和PySqlite为例来学习Python DB API
Feb 05 Python
用python实现前向分词最大匹配算法的示例代码
Aug 06 Python
selenium.webdriver中add_argument方法常用参数表
Apr 08 Python
Python 制作自动化翻译工具
Apr 25 Python
Python常用数字处理基本操作汇总
Sep 10 #Python
Python通用唯一标识符uuid模块使用案例
Sep 10 #Python
Python编写单元测试代码实例
Sep 10 #Python
python super()函数的基本使用
Sep 10 #Python
Python如何实现机器人聊天
Sep 10 #Python
Python 必须了解的5种高级特征
Sep 10 #Python
matplotlib 多个图像共用一个colorbar的实现示例
Sep 10 #Python
You might like
对盗链说再见...
2006/10/09 PHP
小文件php+SQLite存储方案
2010/09/04 PHP
PHP中的函数-- foreach()的用法详解
2013/06/24 PHP
php获取字段名示例分享
2014/03/03 PHP
PHP strtotime函数用法、实现原理和源码分析
2015/02/04 PHP
ZF框架实现发送邮件的方法
2015/12/03 PHP
PHP读取mssql json数据中文乱码的解决办法
2016/04/11 PHP
PHP实现实时生成并下载超大数据量的EXCEL文件详解
2017/10/23 PHP
XmlUtils JS操作XML工具类
2009/10/01 Javascript
解决jquery的.animate()函数在IE6下的问题
2010/12/03 Javascript
下拉列表select 由左边框移动到右边示例
2013/12/04 Javascript
浅析javascript中的DOM
2015/03/01 Javascript
JavaScript的jQuery库插件的简要开发指南
2015/08/12 Javascript
JS实现的自定义网页拖动类
2015/11/06 Javascript
JS如何设置iOS中微信浏览器的title
2016/11/22 Javascript
详解handlebars+require基本使用方法
2016/12/21 Javascript
微信小程序实现手势图案锁屏功能
2018/01/30 Javascript
[01:01:18]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#2COL VS LGD
2016/03/03 DOTA
Python XML RPC服务器端和客户端实例
2014/11/22 Python
Python的time模块中的常用方法整理
2015/06/18 Python
python 实现返回一个列表中出现次数最多的元素方法
2019/06/11 Python
Python selenium文件上传下载功能代码实例
2020/04/13 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
欧铁通票官方在线销售网站:Eurail.com
2017/10/14 全球购物
size?瑞典:英国伦敦的球鞋精品店
2018/03/01 全球购物
27个经典Linux面试题及答案,你知道几个?
2014/03/11 面试题
仓管岗位职责范本
2014/02/08 职场文书
个人贷款承诺书
2014/03/28 职场文书
电教室标语
2014/06/20 职场文书
新党章心得体会
2014/09/04 职场文书
三严三实心得体会范文
2014/10/13 职场文书
2015年党日活动总结范文
2015/03/25 职场文书
爱国教育主题班会
2015/08/14 职场文书
青年人初次创业的“五不要”
2019/08/23 职场文书
golang为什么要统一错误处理
2022/04/03 Golang
Windows Server 修改远程桌面端口的实现
2022/06/25 Servers