这篇文章给大家分享的是有关python中错误和异常处理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
import Exception # except 在捕获错误异常的时候 是要根据具体的错误类型来捕获的 # 用一个块 可以捕获多个不同类型的异常 # EXception 可以捕获所有异常 当对出现的问题或者错误不确定的情况下 可以使用此种 print(dir(Exception)) try: # print(b) #捕获逻辑的代码 li=[1,2,3,4] print(li[10]) pass except NameError as msg: # 捕获到的错误 才会在这里执行 print(msg) pass except IndexError as msg: print(msg) print('初次接触异常') print('HAHAHAHAHHAHAHAH')
try: # print(b) #捕获逻辑的代码 # li=[1,2,3,4] # print(li[10]) a=10/0 pass except NameError as msg: # 捕获到的错误 才会在这里执行 print(msg) pass except IndexError as msg: print(msg) pass except ZeroDivisionError as msg: print(msg) print('初次接触异常') print('HAHAHAHAHHAHAHAH')
异常类型
try: print(b) #捕获逻辑的代码 # li=[1,2,3,4] # print(li[10]) # a=10/0 pass # except NameError as msg: # # 捕获到的错误 才会在这里执行 # print(msg) # pass # except IndexError as msg: # print(msg) # pass # except ZeroDivisionError as msg: # print(msg) # pass except Exception as msg: print(msg) pass print('初次接触异常') print('HAHAHAHAHHAHAHAH')
def A(s): return 10/int(s) pass def B(s): return A(s)*2 def main(): try: B('0') pass except Exception as msg: print(msg) pass pass main() # 不需要在每个可能出错的地方去捕获,只要在合适的层次去捕获错误就可以了 这样的话 就大大减少我们写try----exception的麻烦 # 异常的抛出机制 #如果在运行时发生异常 解释器会查找相应的异常捕获类型 #如果在当前函数里面没有找到的话 它会将异常传递给上层的调用函数 #如果在最外层 没有找到的话 解释器就会退出 程序down掉
class ToolongmyException(Exception): #自定义异常 def __init__(self,leng): ''' :param leng:长度 ''' self.len=leng pass def __str__(self): return '您输入的数据长度是'+str(self.len)+'已经超过长度了' pass def name_Test(): name=input('请输入姓名:') if len(name)>5: raise ToolongmyException(len(name)) #抛出异常 else: print(name) pass pass name_Test()
class ToolongmyException(Exception): #自定义异常 def __init__(self,leng): ''' :param leng:长度 ''' self.len=leng pass def __str__(self): return '您输入的数据长度是'+str(self.len)+'已经超过长度了' pass def name_Test(): name=input('请输入姓名:') try: if len(name)>5: raise ToolongmyException(len(name)) #抛出异常 else: print(name) pass except ToolongmyException as result: print(result) pass finally: print('执行完毕了') pass name_Test()
感谢各位的阅读!关于“python中错误和异常处理的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。