广告
返回顶部
首页 > 资讯 > 后端开发 > Python >浅谈python抛出异常、自定义异常, 传递异常
  • 200
分享到

浅谈python抛出异常、自定义异常, 传递异常

异常自定义浅谈 2022-06-04 18:06:46 200人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

一. 抛出异常 python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行

一. 抛出异常

python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行。

raise 语句

Python中的raise 关键字用于引发一个异常,基本上和C#和Java中的throw关键字相同,如下所示:


import traceback

def throw_error():
  raise Exception("抛出一个异常")#异常被抛出,print函数无法执行
  print("飞天猪")
  
throw_error()

#运行结果:


'''Traceback (most recent call last):
 File "C:UsersAdministratorDesktopsystray.py", line 7, in <module>
  throw_error()
 File "C:UsersAdministratorDesktopsystray.py", line 4, in throw_error
  raise Exception("抛出一个异常")#异常被抛出,print函数无法执行
Exception: 抛出一个异常'''

raise关键字后面是抛出是一个通用的异常类型(Exception),一般来说抛出的异常越详细越好

二.传递异常:

捕捉到了异常,但是又想重新引发它(传递异常),可以使用不带参数的raise语句即可:


class MufCalc(object):
  m = False
  def calc(self,exp):
    try:
      return eval(exp)
    except ZeroDivisionError:
      if self.m:
        print("cool")
      else:
        raise

app = MufCalc()
app.calc(2/0)

三.自定义异常类型

Python中也可以自定义自己的特殊类型的异常,只需要要从Exception类继承(直接或间接)即可:


class MyError(Exception):
  pass

--结束END--

本文标题: 浅谈python抛出异常、自定义异常, 传递异常

本文链接: https://www.lsjlt.com/news/14666.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 浅谈python抛出异常、自定义异常, 传递异常
    一. 抛出异常 Python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行...
    99+
    2022-06-04
    异常 自定义 浅谈
  • python自定义异常和主动抛出异常(r
    有时候python自带异常不够用,如同java,python也可以自定义异常,并且可以手动抛出。注意,自定义异常只能由自己抛出。python解释器是不知道用户自定义异常是什么鬼的。 主动抛出异常。 格式: 主动抛出异常终止...
    99+
    2023-01-31
    异常 自定义 抛出
  • 浅谈抛出异常和捕获异常的一些区别
    小总结 抛出异常: 创建异常对象,封装异常信息然后通过throw将异常对象传递给调用者。 不对异常进行处理只对异常进行抛出是非常不负责任的表现可以称为渣男。 但是可以通过主动抛出异常...
    99+
    2022-11-12
  • java怎么抛出自定义异常
    在Java中,可以通过自定义一个类,并继承Exception或RuntimeException类来创建自定义异常。 下面是一个示例代...
    99+
    2023-10-21
    java
  • 浅谈Thread.sleep()为什么要抛出中断异常
    从场景说起 假设sleep()方法不抛出中断异常,也就是线程没有中断响应能力,会怎么样? 考虑如下场景: 线程A:sleep中 线程B:A别睡了,要关机啦(向A发送中断信号) 线程A...
    99+
    2023-05-17
    Thread.sleep()中断 Thread.sleep()中断异常
  • python异常的传递性及主动抛出学习
    目录异常的传递性主动抛出异常异常的传递性 在 Python 中,异常的传递性指的是,当一个异常没有被处理时,它会沿着调用栈向上抛出,直到被处理或者导致程序崩溃。 具体来说,当一个函...
    99+
    2023-03-24
    python 异常传递抛出 python 异常
  • python自定义异常
    python自定义异常try             异常在try块里抛,如果会产生多个异常,捕捉第一个,匹配except,后边的不再捕捉except: 抓异常else:       try无异常,才会执行elsefinally:   无论...
    99+
    2023-01-31
    自定义 异常 python
  • 浅谈JAVA在项目中如何自定义异常
    JAVA项目中自定义异常 1.数据返回处理类 @Data public class R<T> implements Serializable { priv...
    99+
    2022-11-12
  • 浅谈几种Java自定义异常处理方式
    目录自定义异常类错误编码处理断言处理应用日志处理异常消息模板和格式化处理总结在Java中,异常是一种常见的处理机制。当程序运行出现错误时,Java会默认抛出一个异常,并通过栈回溯信息...
    99+
    2023-05-19
    Java自定义异常 Java 异常
  • Python抛出异常和声明异常有什么区别
    在Python中,抛出异常和声明异常是两个不同的概念。抛出异常是指在程序运行过程中,当发生错误或异常情况时,使用`raise`关键字...
    99+
    2023-10-11
    Python
  • 浅谈Python的异常处理
    Python的异常处理能力是很强大的,可向用户准确反馈出错信息。在Python中,异常也是对象,可对它进行操作。所有异常都是基类Exception的成员。所有异常都从基类Exception继承,而且都在e...
    99+
    2022-06-04
    浅谈 异常 Python
  • Java 异常机制Exception和自定义异常
    目录异常机制异常体系结构异常的捕获与抛出自定义异常异常机制 异常:就是不符合实际需求,在实际中可能不存在也可能不满足实际,所以出现的问题称之为异常。 异常的三种类型: 检查性异常:用...
    99+
    2022-11-13
  • 浅谈CI脚本异常退出问题定位
    背景 在CI脚本中,使用类似如下脚本进行项目编译的计时,但在执行过程中,有时会出现CI脚本(命名为ci.sh)未完全执行的情况: #!/bin/bash -e sleep_time=$1 star...
    99+
    2022-06-04
    浅谈 脚本 异常
  • python异常的传递性及主动抛出的方法是什么
    本文小编为大家详细介绍“python异常的传递性及主动抛出的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“python异常的传递性及主动抛出的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。异...
    99+
    2023-07-05
  • Java异常学习之自定义异常详解
    前言哎呀,妈呀,又出异常了!俗话说:“代码虐我千百遍,我待代码如初恋”。小Alan最近一直在忙着工作,已经很久没有写写东西来加深自己的理解了,今天来跟大家聊聊Java异常。Java异常的体系什么的,理论知识啥的我就懒得去BB太多了,是个搞J...
    99+
    2023-05-31
    java 自定义异常 ava
  • 怎么在python中抛出raise异常
    今天就跟大家聊聊有关怎么在python中抛出raise异常,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、注意点系统的自带的异常只要触发会自动抛出,比如NameError,但用户自...
    99+
    2023-06-15
  • 如何在java中自动抛出异常
    本文章向大家介绍如何在java中自动抛出异常,主要包括如何在java中自动抛出异常的使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。Java的特点有哪些Java的特点有哪些1.Java语言作为静...
    99+
    2023-06-06
  • python 自定义异常类学习
    #自定义异常类 class MyException(Exception): pass def exextp_01(): try: #come code here list = ['java...
    99+
    2023-01-31
    自定义 异常 python
  • Python异步中loop抛出异常的解决方法
    这篇文章主要介绍Python异步中loop抛出异常的解决方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语...
    99+
    2023-06-14
  • 浅谈python中的错误与异常
    目录一、语法错误二、异常处理2.1、try-finally语句2.2、raise 语句2.3、assert 断言语句三、小结一、语法错误 异常:大多数的异常都不会被程序处理,都以错误信息的形式展现在这里 二、异常处理...
    99+
    2022-06-02
    python 错误 python 异常
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作