二、raise 引发一个异常

例子:如果输入的数据不是整数,则引发一个ValueError

1

2

3

4

5

inputValue=input("please input a int data :")

if type(inputValue)!=type(1):

raise ValueError

else:

print inputValue

假设输入1.2,运行结果为:

please input a int data :1.2

Traceback (most recent call last):

File "C:/Users/lirong/PycharmProjects/untitled/openfile.py", line

3, in

raise ValueError

ValueError

如果输入1,运行结果为:

please input a int data :1

1

三、try ...finally

无论异常是否发生,在程序结束前,finally中的语句都会被执行。

1

2

3

4

5

6

a=10

b=0

try:

print a/b

finally:

print "always excute"

运行结果:

Traceback (most recent call last):

always excute

File "C:/Users/lirong/PycharmProjects/untitled/openfile.py", line

4, in

print a/b

ZeroDivisionError: integer division or modulo by zero

虽然有异常发生,但在程序终止前,finally中的语句也能正常执行。。

finally语句也可以和except语句一起使用。

1

2

3

4

5

6

7

8

a=10

b=0

try:

print a/b

except:

print "error"

finally:

print "always excute"

运行结果:

error

always excute

四、自定义一个异常类

自定义一个MyException类,继承Exception。

1

2

3

4

class MyException(Exception):

def __init__(self,message):

Exception.__init__(self)

self.message=message

如果输入的数字小于10,就引发一个MyException异常:

1

2

3

4

5

6

a=input("please input a num:")

if a<10:

try:

raise MyException("my excepition is raised ")

except MyException,e:

print e.message

运行结果:

please input a num:1

my excepition is raised

五、python所有的标准异常类:

异常名称

描述

BaseException

所有异常的基类

SystemExit

解释器请求退出

KeyboardInterrupt

用户中断执行(通常是输入^C)

Exception

常规错误的基类

StopIteration

迭代器没有更多的值

GeneratorExit

生成器(generator)发生异常来通知退出

SystemExit

Python 解释器请求退出

StandardError

所有的内建标准异常的基类

ArithmeticError

所有数值计算错误的基类

FloatingPointError

浮点计算错误

OverflowError

数值运算超出最大限制

ZeroDivisionError

除(或取模)零 (所有数据类型)

AssertionError

断言语句失败

AttributeError

对象没有这个属性

EOFError

没有内建输入,到达EOF 标记

EnvironmentError

操作系统错误的基类

IOError

输入/输出操作失败

OSError

操作系统错误

WindowsError

系统调用失败

ImportError

导入模块/对象失败

KeyboardInterrupt

用户中断执行(通常是输入^C)

LookupError

无效数据查询的基类

IndexError

序列中没有没有此索引(index)

KeyError

映射中没有这个键

MemoryError

内存溢出错误(对于Python 解释器不是致命的)

NameError

未声明/初始化对象 (没有属性)

UnboundLocalError

访问未初始化的本地变量

ReferenceError

弱引用(Weak reference)试图访问已经垃圾回收了的对象

RuntimeError

一般的运行时错误

NotImplementedError

尚未实现的方法

SyntaxError

Python 语法错误

IndentationError

缩进错误

TabError

Tab 和空格混用

SystemError

一般的解释器系统错误

TypeError

对类型无效的操作

ValueError

传入无效的参数

UnicodeError

Unicode 相关的错误

UnicodeDecodeError

Unicode 解码时的错误

UnicodeEncodeError

Unicode 编码时错误

UnicodeTranslateError

Unicode 转换时错误

Warning

警告的基类

DeprecationWarning

关于被弃用的特征的警告

FutureWarning

关于构造将来语义会有改变的警告

OverflowWarning

旧的关于自动提升为长整型(long)的警告

PendingDeprecationWarning

关于特性将会被废弃的警告

RuntimeWarning

可疑的运行时行为(runtime behavior)的警告

SyntaxWarning

可疑的语法的警告

UserWarning

用户代码生成的警告

python异常处理输入不是整数_Python异常处理(二)相关推荐

  1. python异常处理输入不是整数_Python异常处理

    异常处理: Python程序运行语法出错会有异常抛出不处理异常会导致程序终止 示例:用户输入一个整数转换成int型,如果用户输入的不是数字而是其他例如字母等则会出现异常 不使用异常处理代码的处理方法 ...

  2. python异常处理输入不是整数_Python异常处理大全(二)

    本文是Python异常处理教程的第二部分,上部分我们简单的介绍了几种异常,及其处理办法,这部分我们将更详细地对Python中产生的异常处理方法进行探讨. 函数使用异常 看看这个: 如果some_fun ...

  3. python怎么处理异常然后继续_Python异常处理-返回行,继续

    通常,在try块内触发异常后,您永远都无法将执行返回到特定的代码段,因为该异常可能在很深的某个地方发生,并受其他线程的其他副作用影响的许多其他状态.尽管您的程序可能不是这种情况,但是鉴于没有通用的解决 ...

  4. python输入10个整数_python练习:编写一个程序,要求用户输入10个整数,然后输出其中最大的奇数,如果用户没有输入奇数,则输出一个消息进行说明。...

    python练习:编写一个程序,要求用户输入10个整数,然后输出其中最大的奇数,如果用户没有输入奇数,则输出一个消息进行说明. 重难点:通过input函数输入的行消息为字符串格式,必须转换为整型,否则 ...

  5. 在python中输入10个整数并求出最大值_python练习题 :用户任意输入10个整数到列表中,然后由大到小排列并输出。...

    一:填空题: 1.python是一种面向_对象 __的高级语言. 2.python可以在多种平台运行,这体现了python的___可移植___特性. 3.python源代码被解释器转换后的格式为___ ...

  6. Python实现输入三个整数x,y,z,请把这三个数由小到大输出

    输入三个整数x,y,z,请把这三个数由小到大输出,如果用Python来实现,可以有好多种方法. 方法一: >>> import re >>> x, y, z = m ...

  7. 异常处理python要求输入的为英文_python(异常处理)

    异常:异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止). 错误分为语法错误和逻辑错误. python中不同异常的类型: A ...

  8. python异常处理输入不是整数_【Python】异常处理

    异常处理 内容概要 异常的概念 捕获异常 异常的传递 抛出异常 01.异常的概念 程序在运行的时候,遇到错误导致程序停止运行时,这就是异常. 程序停止运行,并且提示错误信息这个动作,我们称为:抛出(r ...

  9. python异常处理try判断整数_Python 异常处理 try、except、raise

    一.try...except 有时候我们写程序的时候,会出现一些错误或异常,导致程序终止.例如,做除法时,除数为0,会引起一个ZeroDivisionError 例子: 1 2 3 4 a=10 b= ...

最新文章

  1. 一个关于hashCode的追问!
  2. Django框架(20.Django的视图函数的request参数以及QueryDict对象)
  3. sqlserver2008驱动_Python连接数据库两种方法,QSqlDatabase,pymmsql,驱动名
  4. ic 卡获取帐号apdu指令_非接触IC卡片APDU指令系统介绍..docx
  5. 一个@Transaction哪里来这么多坑?
  6. 008——数组(八)删除添加数组 得到数组键名键值
  7. 美丽的花蝴蝶 动人的海豚音 天后[Mariah Carey玛丽亚·凯莉]全集
  8. Android开发:apk反编译及后续打包教程2022win11(亲测)
  9. 字体如何设计,这几点很重要
  10. 计算广告学--笔记(1)
  11. android iphone滑动解锁,苹果iOS10锁屏详解:“滑动来解锁”已成为过去
  12. 免费开源Blazor在线Ico转换工具
  13. python的小tips
  14. 伺服驱动器PID调节
  15. 扯ruan蛋的房价,恶心死了我
  16. CentOS7.2安装配置scylladb
  17. Unity官方案例——Roll a ball
  18. 基于L0边缘保持滤波的图像融合 matlab代码
  19. 基于JavaWeb JSP SSM架构的网上求职招聘系统
  20. eureka核心知识梳理

热门文章

  1. 觉醒!MACROSS!(模拟)
  2. 拜读滴滴D8黄轶大神慕课网vue2.0APP教程感想
  3. 新冠肺炎CT识别COVID-CT(一):新冠肺炎CT识别方法与CT数据集
  4. 关于精神永生的现实思考
  5. 让机器人的学习更有趣的Fable
  6. linux安装fcitx中文输入法,解决没有候选项的问题(debian10)
  7. 一刻相册全/批量下载相册到电脑
  8. Texlive2021+VSCode+Latex win10配置文本编辑器
  9. matlab控制参考文献,SPWM的控制的系统文献综述
  10. java获取用户真实IP地址