try....exception....finally

Posted Howhy Blogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了try....exception....finally相关的知识,希望对你有一定的参考价值。

class MyException(Exception):
    def __init__(self,msg):
        self.msg=msg
    def __str__(self):
        return self.msg


try:
    print(‘start‘)
    raise MyException(‘this is a custom exception‘)##手动触发会被Exception捕获
except Exception as e:
    print(e)
finally:
    print(‘end‘)

##ret
start
 
this is a custom exception
 
end
import time
try:
    print(start...)
    time.sleep(10)
except KeyboardInterrupt as e:##按ctrl+c会执行这个语句块
    print(you press ctrl+c)
finally:
    print(end...)


myexception=MyException(‘231‘)
print(hasattr(myexception,‘msg‘))#True
print(hasattr(myexception,‘msg1‘))#False
print(getattr(myexception,‘__str__‘)())#231
setattr(myexception,‘fun‘,lambda x:x)
print(getattr(myexception,‘fun‘)(1234))#1234
delattr(myexception,‘fun‘)

 

  

以上是关于try....exception....finally的主要内容,如果未能解决你的问题,请参考以下文章