Python课程第十四天_上午_课程笔记(异常处理)

Day_14_AM_Exception

# 错误; error,
# 异常: Exception

# 1a = 10  #  SyntaxError: invalid syntax, 错误的语法(代码不规范)
# print(a)  # NameError: name 'a' is not defined, 变量未定义
# [][0]  # IndexError: list index out of range, 下标越界
# 1 + '1'  # TypeError: unsupported operand type(s) for +: 'int' and 'str', 类型错误
# 1/0  # ZeroDivisionError: division by zero, 运算错误

# 异常处理/: 异常捕获
# 作用: 防止代码报错, 导致后面的程序无法执行
try:
    a = 10 / 0
    print(a)
except:
    print('报错了')

# try:
#     a = a + 1
# except ZeroDivisionError as e:
#     print('除0错误了', e)
# except NameError as e:
#     print('未定义错误了', e)
try:
    a = 1/0
except Exception as e:
    print('出错了', e)

# try-except-else
try:
    a = 1/1
    print('a =', a)
except Exception as e:
    print('出错了', e)
else:
    print('未出错')

# try-except-finally
try:
    a = 1/0
    print('a =', a)
except Exception as e:
    print('出错了', e)
finally:
    print('不管有没有错, 我都会最后执行')

# # 抛出异常; 让程序报错
# raise NameError('哈哈,这是我抛出的错误!')

# 自定义异常
class MyException(Exception):
    def __init__(self, code):
        self.code = code
try:
    raise Exception('10001')
except Exception as e:
    print(e)
    print(type(e))
    
# 断言assert:预测
def f(n):
    assert n!=0, 'n不能为0'
    # 预测n!=0:
    # 如果成立正常执行
    # 不成立抛出异常
    a=1/n
    print(a)
f(0)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值