本节大纲
- 模块介绍
- time & datetime 模块
- random
- os
- sys
- shutil
- json & pickle
- shelve
- xml处理
- yaml处理
- configparser
- hashlib
- subprocess
- logging模块
------------------
模块介绍
------------------
- 定义:
模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质上就 是".py"结尾的python文件
包:用来从逻辑上组织模块的,本质就是一个目录(必须带有一个__init__.py文件) - 导入方法 :
a 导入一个模块 import module_name
b 导入多个模块 import module1_name,module2_name....
c 导入一个模块中的所有函数 from module_name import *
(不建议使用此种方式,可能存在原模块和导入模块中相同函数名的函数出现冲突)
d 为解决同名冲突问题,可将导入函数起别名 from module_name import logger as logger2
- import 本质(路径搜索和搜索路径):
导入模块的本质 就是把python文件解释一遍
import module_name ------> module_name.py
-------> module_name.py的路径------->sys.path(根据这个去搜索,先是当前路径.....)
e.g.
结果
导入包的本质 就是执行该包下的__init__.py文件
e.g.
创建如下黄色区域文件
Test.py
结果:
- 导入优化:
from module_test import module
e.g.
建立两个python文件
function.py
module_test.py
结果
- 模块的分类
- 标准库
- 开源模块(第三方模块)