zoukankan      html  css  js  c++  java
  • 异常处理,包,模块总结

    异常处理:

    1,是由语法上的错误引发的异常 (程序执行前就改正)

    2,是逻辑上的错误引发的异常

    预防:对于逻辑上的错误,尽量用if来预防异常

    无法预防对于的逻辑上无法预知的错误,应该用try。。。except处理

    try。。。except 语法:

      

    try:
        被检测的代码块
    except 异常name as e:
      print(e)
    except 异常name as e:
      print(e)
    except 异常name as e:
      print(e)
    except exception as e: #万能异常
      pass
    else:
      没有异常的时候触发
    finally:
      有没有异常都触发
    class myexceprion(baseexceprion): #自定义异常
      pass
    raise type(‘异常值’) #主动触发异常
    assert 1==2 ##断言不通过,就抛出异常
    #保证程序走到某一个阶段的时候,xx必须等于xx,程序才能往下走
    #否则,抛出异常


      万能异常使用:同一种错误。

    二,模块与包

         模块分三类:内置模块,第三方模块,自定义模块

      包是从文件夹/目录,级别组织模块。

    模块的使用 2种 方法:

    1,improt

    2,from。。。import

    只要导入都会干3件事情:

    1,执行文件。

    2,创建名称空间。

    3,创建模块名,指向该文件创建的名称空间。

         模块名。名字

    导入模块,使用注意事项:

    import spam 

    spam.name  使用的时候,必须带spam

    from spam import name

    name                   直接用最后的name名字

    导入包,使用注意事项:

    1,点的左侧,必须是一个包

    2, import glance.api.policy

      glance.api.policy.name   使用的时候,要带上前面的,加上点policy

    3,from glance.api.policy import name

      name          使用的时候,直接用name

          from   ....import...  (import后面是name,不能带点)

    特别注意:

    1,import导入内置或第三方模块,但是绝对要避免使用import来导入自定义包的子模块。

    2,应当使用from...import...的绝对或相对导入,且包的相对导入只能用from的形式。

        尽量用相对导入。(绝对导入,如果改名,就会出现问题)

    3,把包当作模块去看sys

      

        

       

         

  • 相关阅读:
    2019-5-24-WPF-源代码-从零开始写一个-UI-框架
    2019-8-31-dotnet-通过-WMI-获取系统安装的驱动
    2018-12-18-WPF-一个空的-WPF-程序有多少个窗口
    2018-11-20-UWP-开发中,需要知道的1000个问题
    2019-8-31-C#-已知点和向量,求距离的点
    2018-10-31-C#-7.0-使用下划线忽略使用的变量
    2019-3-16-win10-uwp-鼠标移动到图片上切换图片
    MSP432 BSL流程(UART)
    UART串口简介
    C++ STL容器
  • 原文地址:https://www.cnblogs.com/catherine007/p/8482942.html
Copyright © 2011-2022 走看看