一、异常

python中对于异常的处理和其他语言的非常相似,

1.异常获取与处理:

try:suite1        #测试语句块
except exception1:suite2        #如果测试语句suite1中发生exception1异常时执行
except (exception2,exception3):suite3       #如果测试语句suite1中发生元组中任意异常时执行
except exception4 as reason:    #as把异常的原因赋值给reasonsuite4       #如果测试语句suite1发生exception4的异常时执行
except:suite5      #如果测试语句suite1发生异常在所列出的异常之外时执行
else:suite5      #如果测试语句块suite1中没有发生异常时执行
finally:suit6       #不管测试语句suite1中又没有发生异常都会执行

2.自定义异常:

try:f = 'this is error 第%s行输入有误'%(4)raise Exception(f)  #raise 抛出异常  自定义异常print('22')
except Exception as e:  #这个e是局部的print(e)

输出:this is error 第4行输入有误这一行的输出是由最下面的print(e)输出的,因为自定了Exception,在except中将Exception as e. 所以print(e)打印的是自定义的异常信息。

二、断言

断言是对条件的判断,如果条件为真,继续执行。如果为假,中断程序,输出断言错误。

>>> assert 1==2   #断言错误,代码终止
Traceback (most recent call last):File "<pyshell#4>", line 1, in <module>assert 1==2
AssertionError
>>> assert 1==1   #断言正确,继续运行
>>> 

三、面试题

异常和断言很少会有面试题,如果会问的话应该也是自定义异常的语句:

raise Exception(f)

转载于:https://www.cnblogs.com/forfreewill/articles/9303774.html

【Python3_基础系列_012】Python3-异常与断言相关推荐

  1. Java基础(四)——异常、断言、日志

    文章目录 异常.断言.日志 1 异常 2 断言 3 日志 异常.断言.日志 在Java语言中,给出了3种处理系统错误的机制 抛出一个异常 使用断言 日志 1 异常 Error:程序无法处理的错误,无法 ...

  2. python基础系列教程——Python3.x标准模块库目录

    全栈工程师开发手册 (作者:栾鹏) python教程全解 文本 string:通用字符串操作 re:正则表达式操作 difflib:差异计算工具 textwrap:文本填充 unicodedata:U ...

  3. 【Python3_基础系列_006】Python3-set-集合

    一.set集合的方法 set不是特别常用,但是set的一些特性可以方便处理一些特殊情况. 集合(set)是一个无序不重复元素的序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建 ...

  4. 【Python3_基础系列_009】Python3-条件语句-If

    一.if语句用法 if分支判断是编程语言的必备的语法规则,python中if ..elif..else的用法如下: if condition:Statement1 elif condition:sta ...

  5. Java面试题基础系列

    Java面试题基础系列 1.面向对象的特征有哪些方面? 面向对象的特征主要有以下几个方面:抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和 ...

  6. python 基础系列(二) — Python基本语法

    python 基础系列(二) - Python基本语法 python基础系列索引 python 基础系列(一) - Python介绍 python 基础系列(二) - Python基本语法 pytho ...

  7. javascript基础系列(入门前须知)

    -----------------------小历史---------------------------- javascript与java是两种语言,他们的创作公司不同,JavaScript当时是借 ...

  8. java 百分比相加_2019年Java面试题基础系列228道(5),快看看哪些你还不会?

    2019年Java面试题基础系列228道 Java面试题(一) 第一篇更新1~20题的答案解析 第二篇更新21~50题答案解析 第三篇更新51~95题答案解析 Java面试题(二) 第四篇更新1~20 ...

  9. STM32 基础系列教程 21 - NVIC

    前言 学习stm32 NVIC接口编程,学会使用常用的NVIC接口函数,优改中关优先级,开/关单个中断,开/关所有中断,开/关所有中断和异常,系统软件重启等功能. 示例详解 基于硬件平台: STM32 ...

最新文章

  1. 比较两个文件夹图像相似度
  2. install命令和cp命令的区别
  3. 信息系统项目管理知识--知识产权与标准化
  4. java读取文件并显示_JAVA读取本地文件并显示到页面中
  5. Struts2原理图
  6. l4 l7 代理_什么是四层(L4 proxy)和七层负载均衡(L7 proxy)?区别是什么? 翻译自Nginx官网...
  7. PHP面向对象(OOP)----分页类 1
  8. 收藏一个好看的单选多选样式
  9. 【渝粤教育】国家开放大学2018年秋季 0727-22T思想道德修养与法律基础 参考试题
  10. 快速找回WINDOWS 7快速启动栏
  11. iOS上线 ERROR ITMS-4238
  12. Hadoop官网查看手册
  13. java解析txt文本文件_java读取文本文件内容方法详解,java如何读取txt文件?
  14. hfds_HFDS的数据写入流程
  15. 响应式布局以及提交网站
  16. html word-break,HTML Style wordBreak用法及代码示例
  17. 成都,今夜请将我遗忘 读后感
  18. 产品经理之产品类题目
  19. 菜即是原罪,2018省赛总结
  20. 毫米与像素之间的转换

热门文章

  1. JavaScript frame跨域获取元素、修改元素属性、调用其他frame页面方法
  2. 课堂练习之谁是水王(一)
  3. Docker shipyard 试用
  4. JS在火狐浏览器下如何关闭标签?
  5. sqlite3命令详解
  6. s4-8 虚拟局域网
  7. 6.6 rsync:文件同步工具
  8. 图形工作站计算机大全,图形工作站价格怎么样 图形工作站报价大集锦【图文】...
  9. python bottle框架 运维_python bottle框架(WEB开发、运维开发)教程 | linux系统运维...
  10. python简笔画绘制 数据驱动绘图_python:绘制枫叶简笔画