Python包

现在,你必须开始观察组织你的程序的层次结构。变量通常在函数内部。函数和全局变量通常在模块内部。如果你想组织模块?这就牵涉到了包的概念。

包实际上是一个文件夹,它包含了若干模块,使用一个特殊的__init__.py 文件,指示Python这个文件夹是特殊的,因为它包含Python模块。

假设你想创建一个叫做’世界’的程序包,分装’亚洲’、’非洲’等等,分包按序包含’印度’、’马达加斯加’等等。

包只是为了更加方便的分层次组织模块。在标准库中,你会看到包的许多实例。

例如,创建一个名为Graphics的文件夹,并添加一个空文件__init__.py和若干模块,就构成了一个包:

Graphicd/

    __init__.py

    Jpg.py

    Gif.py

    Png.py

    Bmp.py

包可以帮助我们解决以下问题:

  • 为平坦的名称空间加入有层次的组织结构
  • 允许程序员把有联系的模块组合到一起
  • 允许分发者使用目录结构而不是一大堆混乱的文件
  • 帮助解决有冲突的模块名称
点赞