try catch语句用法归纳

while True:
    try:
        # 代码块,逻辑
        inp = input('请输入序号:')
        i = int(inp)
    except Exception as e:
        # e是Exception对象,对象中封装了错误信息
        # 上述代码块如果出错,自动执行当前块的内容
        print(e)
        i = -1
    print(i)
def fun():
    ret = 0
    try:
        li = [11, 22]
        li[8]  # 数组越界
        # int('w3r')  # 数值错误
    except IndexError as e:  # 细分类提在最上面
        print('IndexError',e)
    except ValueError as e:
        print('ValueError',e)
    except Exception as e:  # 捕捉所有错误,写在最后
        print('Exception',e)
    else:  # 不出错执行else
        ret = 1
        print('elese')
    finally:  # 最后不管出不出错都执行
        print('....')
    return ret

r = fun()
if r == 0:
    print('500')
else:
    pass

try:
    int('asdf')  # 报错
except Exception as e:
    print(e)
def db():
    return False

def index():
    try:
        r = input(">>")
        int(r)

        result = db()
        if not result:
            raise Exception('数据库处理错误')  # 直接触发下面的异常
    except Exception as e:
        str_error = str(e)
        r = open('log', 'a')
        r.write(str_error)
        # 打开文件,写日志
index()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值