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

      

        

       

         

  • 相关阅读:
    NgModelController: $setViewValue,$render,Formatter, Parser
    #!/usr/bin/env python与#!/usr/bin/python的区别
    post发送数据 mypost input 改变事件
    post发送 ArrayBuffer
    C# 字符串到字节数组,字节数组转整型
    C# WebKitBrowser 设置内容
    C# Tuple 创建一个新二元集合
    C# 时间对比
    C# 控件调整
    C# invoke和begininvoke的用法 __委托
  • 原文地址:https://www.cnblogs.com/catherine007/p/8482942.html
Copyright © 2011-2022 走看看