zoukankan      html  css  js  c++  java
  • 异常


    # 普通异常
    try
    : print('比如说这句话出现异常') except (异常的名字1,异常的名字2): print('捕获到‘异常的名字1’或‘异常的名字2’后所做的处理') except 异常的名字3: print('捕获到‘异常的名字3’后所做的处理') except Exception as ret:======>相当于创建一个异常对象,然后将变量ret指向该异常对象 print('如果用了Exception,那么意味着只要上面的except没有捕获到异常,这个except一定会捕获到(好像ACL最后一条deny来兜底一样)') print(ret)============>将捕获到的异常信息传递给ret,通过print(ret)来查看异常信息。 else: print('没有异常才会执行此处') finally: print('不管产生异常没有最后都要执行此处')
    # 异常传递:
    def abc(): print(xxx) def bcd(): try: print('11111') abc() ============> 调用此函数的动作不会出错,但此函数内部的print(xxx)会出错,这样的异常也可以捕获到(即异常捕获支持递归) except Exception: pass
    # 自定义异常:
    class zidingyiyichang(Exception):=========>异常就是一个类,但类要当异常使的话要记得继承Exception。 def __init__(self,length,atleast) self.length = length self.atleast = aatleast try: x = input('请输入一个字符串') if len(x) < 3: raise zidingyiyichang(len(x),3)===========>主动抛出异常语法。 except zidingyiyichang as result: print('zidingyiyichang:输入的长度是%d,长度至少应是%d'%(result.length,result.atleast)) # 异常处理中抛出异常: try: print(10/0) except: raise =========>在捕获异常后的处理过程中再将异常抛出,raise后面不跟异常名字则抛出的是捕获到的异常。
  • 相关阅读:
    【mybatis】02-spring集成
    【Spring】xxAware
    【性能调优】Arthas
    【算法】其他算法(字典树Trie等)
    【多线程】JDK源码类图
    POJ-1251-Jungle Roads
    Prim算法模板
    敌兵布阵-线段树(1)
    hdu-1541-Stars (树状数组)
    母牛生小牛
  • 原文地址:https://www.cnblogs.com/baihualin/p/10345196.html
Copyright © 2011-2022 走看看