码迷,mamicode.com
首页 > 编程语言 > 详细

python基础教程python raise的基本使用

时间:2020-11-06 01:58:33      阅读:23      评论:0      收藏:0      [点我收藏+]

标签:python教程   none   其它   err   出现   自己   exception   eve   else   

更多python教程请到: 菜鸟教程 https://www.piaodoo.com/


简介

当程序出现错误,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的资料请关注菜鸟教程www.piaodoo.com其它相关文章!

python基础教程python raise的基本使用

标签:python教程   none   其它   err   出现   自己   exception   eve   else   

原文地址:https://www.cnblogs.com/piaodoo/p/13931225.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!