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: l = ["a", "b"] int(l[2]) except (ValueError, IndexError) as e: pass