python之异常处理
Python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行。
raise关键字后面是抛出是一个通用的异常类型(Exception),一般来说抛出的异常越详细越好。
def get_container_information(): container_result = GetCommonSql().get_container_info("PUTTED_AWAY", "NOT_EMPTY") for i in container_result: if i[1] != 'A1': logger.info(f"多格口料箱信息为:{i}") break else: raise Exception("未查询到多格口信息") return i
在python的异常中,有一个万能异常:Exception,他可以捕获任意异常
s1 = 'hello' try: int(s1) except Exception,e: print e
程序时需要考虑到try代码块中可能出现的多个异常,可以这样写:
s1 = 'hello' try: int(s1) except IndexError,e: print e except KeyError,e: print e except ValueError,e: print e