python中的异常处理

用try,except处理异常

try:
    age=input('1>>: ')
    int(age)  # 主逻辑
    num2=input('2>>: ')
    int(num2)  # 主逻辑
    l=[]
    l[10000]
    dic={}
    dic['name']
except KeyError as e:     # except KeyError 捕获错误类型
    print(e)
except ValueError as e:
    print('===>',e)
except IndexError as e:
    print('---->',e)
print('11111111111111111')
while True:
    try:
        age=input('1>>: ')
        int(age)  # 主逻辑
        break
    except Exception as e:      #万能的Exception :捕获所有异常
        print('请重新输入',e)

print('11111111111111111')

异常的else,finally结构

s1 = 'hello'
# s1=1
try:
    int(s1)
except IndexError as e:
    print(e)
except KeyError as e:
    print(e)
except ValueError as e:
    print(e)
except Exception as e:
   print(e)
else:
    print('try内代码块没有异常则执行我')
finally:
    print('无论异常与否,都会执行该模块')

print(1111111111111)
print(22222222222)
print(33333333333)

自己定制异常类

# 继承BaseException基类
class EgonException(BaseException):
    def __init__(self,msg):
        self.msg=msg

raise  TypeError('类型错误')
raise EgonException('自己定制的异常')

print(EgonException('自己定制的异常'))

assert断言

def test1():
    '一堆逻辑'
    res=1
    return 1
res1=test1()

assert res1 == 2   # 该行断言的效果与下面用if和raise相同
if res1 != 2:
    raise AssertionError
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值