一、模块五大部分
定义,导入方法,import本质(路径搜索),导入优化,模块的分类
1、定义:
模块是用来从逻辑上组织python代码(变量,函数,类,逻辑实现一个功能),本质就是.py结尾的python文件
2、导入方法
(1)import module_name1,module_name2
导入多个的话,用“,”隔开
(2)from module_alex import * (导入模块内所有函数,不建议使用)
或者from module_alex import m1,m2,m3
(3)from module_alex import logger as logger_alex
别名机制,导入的模块logger起个别名logger_alex,引用logger_alex.xxx
3、import本质
(1)把module_alex所有的代码解释一遍,赋值给module_alex(all_code),调用时使用module_alex.xxx
(2)from ... import name
直接打开module_alex文件中的name变量,拿到当前解释执行一遍,直接调用name
总结:导入模块的本质就是把python文件解释一遍
(3)python包:本质就是一个目录(必须包含__init__.py文件),从逻辑上组织模块
导入包的本质,就是解释执行包下的__init__.py文件
过程:搜索模块--找到模块--解释执行
搜索根据sys.path()定义的环境变量查找,找到就不会继续往后找
4、导入优化
from module_test import test
如果方法要用的太多,建议使用上面这种方法
5、模块的分类
标准库(内置模块),开源模块,自定义模块
二、内置模块
(1)time与datetime
a、时间戳
b、格式化的时间字符串
c、元组(struct_time)共九个元素
方法:time.time()时间戳
time.clock
time.sleep() 睡几秒
time.gmtime()转换成元组(格林威治时区)
time.localtime()转成元组(本机时区)
time.mktime()元组转换成时间戳
time.strftime()元组转换成字
time.strptime()字符串转成元组(注意一一对应关系)
asctime()元组转成字符串(特定格式)
ctime()时间戳转成字符串(特定格式同上)