Python包

Python包:

包是一种管理 Python 模块命名空间的形式,采用 “点模块名称”

例:A.B  表示 A 模块的 B子模块

当不同模块间存在相同的变量名时,一个是使用 模块名.变量名 另一个是 变量名

当创建一个包时,可能使用的结构:

'''
包名:
    初始化文件 __init__.py
    功能1 实现的子包:
        __init__.py
        子功能1
        ...
        子功能n

    功能2 实现的子包:
        __init__.py
        子功能1
        ...
        子功能n

    功能3 实现的子包:
        __init__.py
        子功能1
        ...
        子功能n

    ...

    功能n 实现的子包:
        __init__.py
        子功能1
        ...
        子功能n
'''

 当导入一个包时,Python 会根据 sys 模块的 path 变量中寻找这个包

目录中只有一个 __init__.py 文件才会被认为是一个包

导包常见的几种方式:

  import 模块名 或 包:调用方法,使用 模块名.方法

  from 模块名 import 子模块(子模块 或 函数 或 类 或 变量):使用函数调用

  from 模块名 import * :使用函数进行调用

  注:如果 __init__.py 文件中存在 __all__变量,则导入 __all__变量的值,在更新包的时候,注意修改__all__的值

  __all__ = ["echo", "surround", "reverse"] 导入 * 时,从 __all__ 导入

包还提供 __path__ ,一个目录列表,每一个目录都有为这个包服务的 __init__.py 文件,先定义,后运行其他的__init__.py文件

__path__ :主要用于扩展包里面的模块


2020-02-13

 

posted @ 2020-02-13 12:07  CodeYaSuo  阅读(118)  评论(0编辑  收藏  举报