Python的包
1.1、Python的包的概念

一个.py文件就是一个Python模块

一个功能可能会很复杂,也可能很简单,如果复杂,可能会使用几个.py文件编写, 很简单的话,可能只使用一个.py文件实现。 所以,当实现一个功能需要多个.py文件的时候,就需要以包方式组织众多的模块

另外,我们通常还需要有版本管理、依赖管理、支持的最低CPython的版本信息等等一些其他的信息。 所以,光有模块的概念是不够的,这就需要引入包的概念。

Python有如下特点:

  • 一个文件夹。
  • 该文件夹的根目录下有一个__init__.py文件。
  • 该文件夹或者子文件夹中包含有一个或者多个模块

Python示例:

1.2、__init__.py
1.2.1、__init__.py被执行的时机

执行到form packageName import moudleName语句的时候。

执行到form packageName.moudleName import symbol语句的时候。

执行到import packageName.moudleName语句的时候。

执行到python -m packageName命令的时候。

执行到python -m packageName.moudleName命令的时候。

1.2.2、__all__ = ['moudleName1', 'moudleName2', 'moudleNameN']

当模糊导入一个中的模块的时候,如下:

from packageName import *

此时,这个*到底是指哪些模块呢?

这时候,就是看__init__.py中有无__all__ = ['moudleName1', 'moudleName2', 'moudleNameN']语句,该语句控制着该中 哪些模块可以被其他模块导入。

如果在__init__.py中没有__all__ = ['moudleName1', 'moudleName2', 'moudleNameN']语句,那么就表示这个中的所有模块都可以被其他模块导入。

1.3、__main__.py

如果一个包想要通过python -m packageName命令执行,就必须在的根目录下包含一个__main__.py文件。 您可以这样理解:一个中可以有很多个模块,要将一个看作一个模块,这个就需要一个入口模块,这个入口模块再管理这个包的其他模块

1.4、Python的包的管理器
1.5、常用的Python包
命令行工具
Web开发框架
HTTP请求