zoukankan      html  css  js  c++  java
  • 包的基本使用

    应当熟练掌握模块及包之间的调用关系,以后项目中常用。

    1.什么是包?

    包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹。

    2.为什么要有包?

    如果一个模块里面很多方法,有时候需要修改里面的一些功能,查找起来很不方便。

    所以需要把文件里面的方法抽离出来,分在多个文件存放,方便增加功能。

    3.包怎么样?

    导入包就是导入包下面的__init__.py

    import ...

    from ... import ...

    注意的问题

    1.包内所有的文件都是被导入的,而不是被执行的。

    2.包内部的导入可以使用绝对导入(以包的根目录为准)和相对导入(以当前被导入的模块所在的目录为基准),推荐使用相对导入

    3.当文件是执行文件时,无法在该文件内用相对导入的语法。

    只有在文件被当作模块导入时,该文件才能使用相对导入的语法。

    4.凡是在导入时带点的,点的左边必须是包。

    import aaa.bbb.m3.f3 # 错误

    import aaa
    5.首次导入包发生的三件事:
    1.创建一个包的名称空间。
    2.执行包下的__init__.py文件,将执行过程中产生的名字存放于包的名称空间。
    3.在当前执行文件拿到一个名字aaa,aaa是指向包的名称空间的。

  • 相关阅读:
    topcoder srm 633 div1
    HDU 4997 Biconnected (状态压缩DP)
    HDU 5013 City Tour
    BZOJ 3672 [Noi2014]购票 (熟练剖分+凸壳维护)
    BZOJ 1488: [HNOI2009]图的同构 polay
    BZOJ 1565 植物大战僵尸(最大权闭合图)
    iOS加载程序视图的方式
    内存管理2(主讲MRR)
    内存管理1
    排序算法之希尔排序
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/9198708.html
Copyright © 2011-2022 走看看