异常处理

基本的语法规则:

try:

except ..:

else:

finally:

int_var = 'we'

try:
    n = int(int_var)

except Exception as e: #如果异常被捕捉到,则执行此处
    print (e)

else: #执行了except的语句,就不执行这个。如果try中是没有异常,没有执行except中的语句。则执行这里。
    print ('This is else.')

finally: #不管怎么样,最后都会执行这里。
    print ('end.....')

自定义异常,

  print是默认调用__str__方法的。

  raise是主动出发异常。

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

try:
    raise LeslieError('i am error....')
except LeslieError as e:
    print (e)

断言:

使用assert 去断言后面的条件是否成立,如果不成立怎直接异常退出。我们一般不去捕获这个异常。assert后面的条件必须成成立才成执行之后的语句,否则退出。

a = 123
assert isinstance(a,str)
print (a)
原文地址:https://www.cnblogs.com/qikang/p/8839637.html