Python 异常(Exception)
1. 字符串为构造函数的参数
>> raise Exception('hyperdirve overload')
Exception Traceback (most recent call last)
<ipython-input-34-b31edcf659a9> in <module>()
----> 1 raise Exception('hyperdrive overload')
Exception: hyperdrive overload
又因为 Exception 是所有异常类的基类,因此所有的异常类都有一个接受字符串的构造函数。
2. 捕获多个异常
try:
x, y = 1, 0.
# x, y = 1, 'a'
print(x/y)
exception (ZeroDivisionError, TypeError), e:
print(e.message)
在 python 3.x 中 exception 子句又可改造为:
exception (ZeroDivisionError, TypeError) as e:
print(e.message)
3. 捕获所有异常
try:
...
exception:
print('Something wrong happened')
4. try … except … else
except… else… 与 if… else… 的执行逻辑是一致的,即 if(except) 发生 时,else 不再执行,而如果 if(except)判断不通过,将会进入 else 语句:
try:
print('A simple test')
except:
print('WTF? Something went wrong.')
else:
print('Ah... Went just as planned.')
运行得如下输出:
A simple test
Ah... Went just as planned.
Python 异常(Exception)的更多相关文章
- 理解Python语言里的异常(Exception)
Exception is as a sort of structured "super go to".异常是一种结构化的"超级goto". 作为一个数十年如一日 ...
- python 异常
引用一段来自菜鸟教程的文章:http://www.runoob.com/python/python-exceptions.html Python 异常处理 python提供了两个非常重要的功能来处理p ...
- python异常报错详解
异常BaseException所有内置异常的基类.它不是直接由用户定义的类继承(为此使用Exception).如果 str()或者unicode()是在这个类的一个实例上被调用,返回实例的参数表示形式 ...
- #21 Python异常
前言 运行程序时经常遇到各种错误,例如:ImportError(导入模块错误).IndexError(索引错误).NameError(变量错误).SyntaxError(语法错误).Indentati ...
- Python异常和异常处理
Python异常和异常处理2017年12月20日 22:17:08 Megustas_JJC 阅读数:114 标签: python 异常处理 更多 个人分类: Python 版权声明:本文为博主原创文 ...
- python——异常except语句用法与引发异常
except: #捕获所有异常 except: <异常名>: #捕获指定异常 except:<异常名1,异常名2):捕获异常1或者异常2 except:<异常名>,< ...
- 笔记-python异常信息输出
笔记-python异常信息输出 1. 异常信息输出 python异常捕获使用try-except-else-finally语句: 在except 语句中可以使用except as e,然后通 ...
- python异常捕获异常堆栈输出
python异常捕获异常堆栈输出 学习了:https://blog.csdn.net/chris_grass/article/details/77927902 import traceback def ...
- 小学生绞尽脑汁也学不会的python(异常,约束,MD5加密,日志处理)
小学生绞尽脑汁也学不会的python(异常,约束,MD5加密,日志处理) 异常处理(处理) 1.产生异常.raise 异常类(),抛出异常2. 处理异常: try: xxxxx # 尝试执行的代码. ...
- python 异常之进阶操作
1.文件分析 下面来做一些文件分析操作,分析整本书的信息. 知识点: string.split():将字符串分解为列表. open(filename,‘rb’)或者open(filename,enco ...
随机推荐
- Object::connect: Cannot queue arguments of type 'QMap<QString,QString>'(要使用qRegisterMetaType<StringMap>进行注册)
QObject::connect: Cannot queue arguments of type 'QMap<QString,QString>',(Make sure 'QMap<Q ...
- 英语发音规则---W字母
英语发音规则---W字母 一.总结 一句话总结: 1.W在单词开头发[w]? week [wiːk] n. 周,星期 win [wɪn] vt. 赢得 wake [weɪk] vi. 醒来 sweet ...
- 利用Spring Hibernate注解packagesToScan的简化自动扫描方式
转自:https://blog.csdn.net/wzygis/article/details/28256045
- php global GLOBALS[]变量
$a=123; function aa() { Global $a; //如果不把$a定义为global变量,函数体内是不能访问函数体外部的$a的,但是可以定义一个相同的名字$a,此时这个变量是局部变 ...
- Burnside&Polya总结
这里就算是一个小总结吧- 附参考的网址: http://blog.sina.com.cn/s/blog_6a46cc3f0100s2qf.html http://www.cnblogs.com/han ...
- PHP邮件发送库:Swiftmailer
Swiftmailer需要PHP 7.0或更高版本,(proc_*函数可用.) 安装 composer require "swiftmailer/swiftmailer:^6.0" ...
- vue路由钩子拦截器beforeEach和afterEach及页面路由变化路由监听
在路由跳转的时候,我们需要一些权限判断或者其他操作.这个时候就需要使用路由的钩子函数. 定义:路由钩子主要是给使用者在路由发生变化时进行一些特殊的处理而定义的函数. 总体来讲vue里面提供了三大类钩子 ...
- IntelliJ Idea下Go项目开启Debug调试
1.新建Go项目,创建入口go文件(Test1.go),随便写点啥,比如: package main import "fmt" func main(){ fmt.Println(& ...
- Oracle学习笔记——常用函数总结
在平时写PL/SQL的时候,经常要用到很多系统自带的函数,而这些函数用起来非常好用,但是每次用完以后,就又忘到脑后了,为了加深自己的映象,以及对这些函数做一个全面的总结,就有了今天这篇文章. 首先这就 ...
- 细数ZBrush这些年的心路历程
ZBrush 的出现,带来了一场3D造型的革命.它完全颠覆了传统三维设计工具的工作模式,将3D空间绘图这种全新的设计理念呈现在广大设计师面前,强大的雕塑建模功能和颜色绘制功能释放了艺术家的灵感,让设计 ...