zoukankan      html  css  js  c++  java
  • 异常处理与包的导入

    异常处理与包的导入

    返回首页

    异常处理

    在程序中,出现的异常错误大多分为两种,一种是语法错误,一种是逻辑错误。

    异常处理的语法:

    try:
        被检测的代码块
    except 异常类型 as e:
        try中一旦检测到异常,就执行这个位置的逻辑

    万能异常:

    try:
        被检测的代码块
    except Exception as e:
        print(e)

    主动触发异常:

    tryraise TypeError("类型错误")
    except Exception as e:
        print(e)

    模块导入

      第一件事:创建名称空间,用来存放spam.py中定义的名字

      第二件事:基于刚刚创建的名称空间来执行spam.py

      第三件事:创建名字spam指向该名称空间,spam.名字的操作,都是以spam.py为准。

      先找内存:sys.modules-----》再找内建---------->最后找sys.path

    包导入

      无论是import还是from XXX import XXX 的形式,凡是在导入语句中,遇到带点的,都是第一时间提高警惕:这是关于包导入才有的语法。

      包的本质就是一个包含__init__.py文件的目录。

      凡是在导入时带点的,点的左边都必须是一个包。

      绝对导入:

    # 绝对导入
    from 包名.包名... import 模块
    模块.方法()

      相对导入:相对导入的点,一个点是当前目录,两个点是上级目录。

    #相对导入 
    from .. 包名 import 模块
    模块.方法()

      特别注意的是:可以用import导入内置或者第三方模块,但是要绝对避免使用import来导入自定义包的子模块,

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

    ----------- END ----------

  • 相关阅读:
    Windows各种计时器
    C++:数据流和缓冲区
    CImage类的使用介绍!
    PCL:PCL可视化显示点云
    Qt:&OpenCV—Q图像处理基本操作(Code)
    Boost锁~临界区保护和临界资源共享
    关于XML学习
    Eigen库对齐问题:declspec(align('16')) 的形参将不被对齐
    boost多线程使用简例
    一个openMP编程处理图像的示例
  • 原文地址:https://www.cnblogs.com/george92/p/14827893.html
Copyright © 2011-2022 走看看