Python从入门到入坟

2020/06/11 模块

标准库模块:

Python标准库提供了操作系统功能、网络通信、文本处理、文件处理、数学运算等基本功能。比如:random(随机数)、math(数学运算)、time(时间处理)、file(文件处理)、os(和操作系统交互)、sys(和解释器交互)等

 

模块化编程的流程:

  1. 设计API,进行功能描述
  2. 编码实现API中描述的功能
  3. 在模块中编写测试代码,并消除全局代码
  4. 使用私有函数实现不被外部客户端调用的模块函数。

模块的创建和测试代码:

每个模块都有一个名称,铜鼓特殊变量__name__可以获取模块名称。当一个模块被作为程序入口是(主程序、交互式提示符下),它的__name__的值为"_main__".

包package的使用:

概念:当一个项目中有很多个模块时,需要再进行组织。我们将功能类似的模块放到一起形成“包”。本质上,“包”就是一个必须有__init_.py的文件。

导入包操作和本质:

  1. import a.aa.module_A
  2. from a.aa import module_A
  3. from a.aa.modulw_A import fun_AA

本质就是“导入了包的__init__.py”文件,也就是说,“import pack1”意味着执行了包pack1下面的__init__.py文件。这样,可以再__init__.py中批量导入我们需要的模块,而不再需要一个个导入。

__init__.py的三个核心作用:

  1. 作为包的标识,不能删除。
  2. 用来实现模糊导入
  3. 导入包实质是执行__init__.py文件,可以在__init__.py文件中做这个包的初始化、以及需要统一执行代码。

sys.path和模块搜索路径

当我们导入某个模块文件时,Python解释器一般按照如下路径寻找模块文件(按顺序寻找,找到即停不继续往下寻找):

  1. 内置模块
  2. 当前目录
  3. 程序的主目录
  4. Pythonpath目录
  5. 标准链接库目录
  6. 第三方目录
  7. .pth文件的内容(如果存在的话)
  8. sys.path.append()临时添加的目录

 

你可能感兴趣的:(python基础入门)