python 异常处理

来源:互联网 发布:小腻腻淘宝是正品吗 编辑:程序博客网 时间:2024/06/05 10:06
import logging#logging模块是用来记录错误信息,若增加了config,则可以记录在日志里方例查找def foo(s):    return 10/int(s)def bar(s):    return foo(s)*2def main():    try:        bar('0')    except Exception as e:        logging.exception(e)main()print('END')#raise抛出异常,捕获异常后可以将异常往外抛,此函数处理不了异常,可以向外层抛,例外面调用者处理此异常。就像员工处理不了事情向上抛给老板def foo(s):    n=int(s)    if n==0:        raise ValueError('invalid value: %s' %s)    return 10/ndef bar():    try:        foo('0')    except ValueError as e:        raisebar()#错误调试#(1)可以直接打印出变量值,或者断言或者是logging,或者是pdb,这个相当于pycharm中的debug#以logging为例import logginglogging.basicConfig(level=logging.INFO)s='0'n=int(s)logging.info('n=%d' % n)print(10/n)
0 0