zoukankan      html  css  js  c++  java
  • 异常处理

    异常处理

    • 语法错误
      • 无法通过异常处理解决
      • 因为语法错误程序无法运行代码不执行
    • 逻辑错误
      • 数学逻辑出错1/0
      • 字典索引错误
      • 列表索引错误等
    • 程序一但发生错误,就会停止运行
    • 异常处理就是忽略这些逻辑上的错误,然后返回一个理想上的结果

    异常处理语句

    • except支持多分枝

    • except后面的错误类型可以不写

        try:
        	'''需要测试的代码块'''
        	
        except 错误类型[可选]:
        	'''错误后返回的代码块'''
        	
        except 错误类型[可选]:
      
    • else没有异常的情况下执行else后的代码块

        try:
        	'''需要测试的代码块'''
        
        except 错误类型[可选]:
        	'''错误后返回的代码块'''
        
        else:
        	'''try中没有错误就会执行这里'''
      
    • finally有没有错误最后都会执行

      • 比如文件的关闭最后都要执行

          try:
          	'''需要测试的代码块'''
          
          except 错误类型[可选]:
          	'''错误后返回的代码块'''
          
          else:
          	'''try中没有错误就会执行这里'''
          
          finally:
          	'''不管有没有异常都会执行的代码块'''
        
    • 函数中returnfinally

      • return也会继续执行finally中的代码块

      • return不会继续执行else中的代码块

          def func():
          try:
          	print('测试')
          	return
          except Exception:
          	print('错了')
          else:
          	print('完全ojbk')
          finally:
          	print('测试执行')
          #调用
          func()
          #结果
          测试
          测试执行
        
    • except Exception处理万能异常

      • except Exception as error_name提供的报错机制

          def func():
          try:
          	ss	#提供一个错误的信息
          	print('测试')
          	return
          except Exception as error:
          	print('错了', error)
          else:
          	print('完全ojbk')
          #调用
          func()
          #结果
          错了 name 'ss' is not defined
  • 相关阅读:
    [转]vim 常用命令
    C语言运算符优先级顺序
    uboot
    linux 驱动开发 不定期更新
    [转]spdk 和nvme 预备知识1
    【转】聊聊 Linux IO
    [转]NVMe协议/ SSD控制器/ linux driver / open channel
    Ubuntu给应用程序创建一个启动图标
    Qt4.8.7+mingw4.8.2 环境搭建
    更改C编译器的缺省字节对齐方式__align(),__attribute((aligned (n))),#pragma pack(n)
  • 原文地址:https://www.cnblogs.com/liliudong/p/9599176.html
Copyright © 2011-2022 走看看