python的学习

本文介绍了Python中的异常捕获机制,包括异常的结构、类型和分类,并通过实例讲解了何时及如何处理异常。此外,文章还深入探讨了自定义迭代器对象(生成器),阐述了生成器的本质、用法及其在代码优化中的作用。最后,补充了for循环的工作原理。
摘要由CSDN通过智能技术生成

异常捕获

1.异常

程序在运行过程中如果出现异常会导致整个程序的结束(bug)

2.异常的结构

1.关键字line所提示的行数,精准提示错误所在行数
2.最后一行冒号左侧是错误的类型
3,最后一行冒号右侧是错误的具体原因

3.异常的类型

NameError 名字错误
IndexError 索引错误
KeyError k键错误
SyntaxErroe 语法错误
YypeError 类型错误

4.异常的分类

1.语法错误
不允许错误一旦错误需要立即修改
2.逻辑错误
允许错误一旦错误后修改即可

异常捕获实参演练

1.什么时候才可能会需要自己写代码处理异常

当代码不确定什么时候会报错的情况下

2.异常捕获的使用相当于是提前预测可能出现的问题并提前给出处理的措施

3,异常捕获的代码实现

3.1.基本语法结构
  try:
              可能会出错的代码
  except 错误类型:
              对应错误类型解决措施
try:
    name
except NameError:
    print('')
print('duidui')
     try:
                     可能会出错的代码
     except   错误类型1  as  e: e就是具体的错误类型
                     对应错误类型1的解决错误类型1的措施
     except   错误类型2  as  e: e就是具体的错误类型             
                     对应错误类型1的解决错误类型1的措施
              。。。。。。。。
3.2万能异常
       try:
             可能会出错的代码
       escept   Exception as  e :  万能异常方式1
              print(e)
       escept  BaseException as  e :万能异常方式2

4.异能捕获其他操作补充

4.1 else与finally
              try:
                            可能会出错的代码  
              except Exception as  e :
                            print()
               else:
                            print(‘try检测的代码没有错误的情况下正常运行结束,会执行else子代码’)

              finally:
                            print(‘try检测的代码无论有没有出错,最后都会执行finally的子代码’)

补充以前知识

if …else … while … else … for… else…

4,2 assert 断言 预测
4.3 主动报异常
     if  :
          raise xxx
          raise Exception  xxx   万能主动
      else:
           print()

“”"
1.异常捕获能尽量少用就尽量少用
2.被try监测的代码能尽量少就尽量少
“”"
练习

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值