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')<br><br>##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