美文网首页python相关
9. Python的异常

9. Python的异常

作者: edwin1993 | 来源:发表于2018-03-27 17:39 被阅读0次
try..except

我们可以使用try..except语句来处理异常。我们把通常的语句放在try-块中,而把我们的错误处理语句放在except-块中。

except从句可以专门处理单一的错误或异常,或者一组包括在圆括号内的错误/异常。如果没有给出错误或异常的名称,它会处理所有的错误和异常。对于每个try从句,至少都有一个相关联的except从句。

你还可以让try..catch块关联上一个else从句。当没有异常发生的时候,else从句将被执行。

引发异常

可以使用raise语句引发异常。你还得指明错误/异常的名称和伴随异常触发的异常对象。你可以引发的错误或异常应该分别是一个Error或Exception类的直接或间接导出类。

# 通过继承定义一个自定义的异常‘ShortInputException’。
class ShortInputException(Exception):
    '''A user-defined exception class.'''
    def __init__(self, length, atleast):
        Exception.__init__(self)
        self.length = length
        self.atleast = atleast

try:
    s = input('Enter something --> ')
    if len(s) < 3:
        print(len(s))
        raise ShortInputException(len(s), 3)
except EOFError:
    print ('\nWhy did you do an EOF on me?')
except ShortInputException as x: #与Python 2.X不同的写法
    print ('ShortInputException: The input was of length %d, \
    was expecting at least %d' % (x.length, x.atleast))
else:
    print ('No exception was raised.')
finally:
    print('finish the pro')

finally

在一个try块下,你可以同时使用except从句和finally块,要同时使用它们的话,需要把一个嵌入另外一个。
finally块在执行了try 或者 except后一定会执行。

相关文章

  • 9. Python的异常

    try..except 我们可以使用try..except语句来处理异常。我们把通常的语句放在try-块中,而把我...

  • 9. 异常

    基于网络课程《Python全栈开发专题》 记录笔记,请支持正版课程。 raise抛出异常 自定义异常类 捕捉异常 ...

  • 9.异常

    异常分为两大类,一种是Error,jvm系统内部错误,严重错误,程序会崩溃。第二种是Exception,其他因编程...

  • 24:python中的异常

    异常: 首先看看python的异常继承树 python的异常分为两种. 1、内建异常:就是python自己定义的异...

  • Python学习(八)

    异常处理 Python中的异常类型总结: Python内置异常类的层次结构: 异常检测 try-except语句 ...

  • Python错误处理机制

    @(python程序员)[Python] Python Cookbook 捕获所有的异常 处理异常的时候最好还会尽...

  • Python异常处理

    参考 Python菜鸟教程错误与异常 Python 异常处理 错误和异常 Python中(至少)有两种错误:语法错...

  • (三)python错误与异常&面向对象编程

    python错误与异常 语法错误与定位 异常捕获、异常处理 try:xxxexcept: 自定义异常 python...

  • Python异常处理

    Python中文件的操作 Python异常的处理 异常的引发 try⋯finally的使用

  • Python常见异常

    python标准异常 异常名称 描述 BaseException 所有异常的基...

网友评论

    本文标题:9. Python的异常

    本文链接:https://www.haomeiwen.com/subject/jwrscftx.html