模块的定义:模块就是一个 py 文件。
模块主要分为三类:
- 内置模块,也称 Python 标准库,是 Python 官方已经封装在 Python 解释器中了,大约有 200 多个;
- 第三方模块,是一些组织或个人写好的 py 文件,供我们使用;
- 自定义模块,也就是我们自己写的 py 文件。
为什么要学习模块:
- 开发效率高;
- 拿来主义:同内置函数一样,我们只需要把模块拿来用就好,不必深究它的原理;
- 减少重复代码:分文件管理,有助于修改和维护。
怎么使用模块:
1 | import 导入 将模块中所有内容导入 |
导入时发生的事情
- 将模块存储到当前名称空间中;
- 以模块的名字命名,并开辟空间;
- 通过模块名来使用模块中的功能。
同一个模块即便写多次导入, 也只执行一次。
导入顺序:
内存 –> 内置 –> sys.path
列表
模块的两种用法:
- 当做普通模块执行
- 被当做脚本执行
1 | if __name__ == "__main__": |
在当前文件中执行,__name__
获取的值是 '__main__'
;
当前文件被当做模块导入时,__name__
获取的是当前文件名。
以后要避免(不能这么写)的问题:
- 循环导入(了解)
import 和 from 的对比:
- import 全部导入
- from 指定功能导入
- import 和 from 都可以支持 as
- from 会将之前定义同名的覆盖
- from 可以一行导入多个功能
from lib import *
将lib下所有的功能全部导入- import 建议一行导入一个模块
- 推荐是使用 from
模块导入的顺序:
- 内存,内置,
sys.path
1 | sys.path # ***** |