1.Time模块
1.1时间戳
1.2格式化时间
1.3结构化时间
1.4程序执行时间
2.datetime模块
3.random模块
4.os模块
4.1定义
os模块负责程序与操作系统交互
4.2 os常见操作
获取当前路劲的绝对路劲,获取当前路劲的父路径、父父路劲等
5.sys模块
5.1定义
sys模块负责程序与python解释器进行交互
5.2.sys重点模块
sys.path:返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.version:获取Python解释程序的版本信息
sys.exit(n):退出程序,正常退出时exit(0)
6.json和pickle模块
6.1.序列化
把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,
6.2.序列化的优点
1.持久保存状态
2.跨平台数据交互
6.3.json格式
使用json序列化能够达到跨平台传输数据的目的
7.pickle格式
7.1简介
pickle的好处是可以存储Python中的所有的数据类型,包括对象,而json不可以
7.2操作
8.hashlib模块
8.1简介
该算法接受传入的内容,经过运算得到一串hash值。.
8.2hash值的特点
1.只要传入的内容一样,得到的hash值一样,可用于非明文密码传输时密码校验
2.不能由hash值返解成内容,即可以保证非明文密码的安全性
3.只要使用的hash算法不变,无论校验的内容有多大,得到的hash值长度是固定的,可以用于对文本的哈希处理hash算法其实可以看成如下图所示的一座工厂,工厂接收你送来的原材料,经过加工返回的产品就是hash值
8.3操作
9.shutil模块
1.shutil简介
相比os模块,shutil模块用于文件和目录的高级处理,提供了支持文件赋值、移动、删除、压缩和解压等功能。
2.复制文件
shutil模块的主要作用是复制文件,七种实现方式:
9.2.1shutil.copyfileobj(file1,file2)覆盖复制
将file1的内容覆盖file2,file1、file2表示打开的文件对象。
9.2.2shutil.copyfile(file1,file2)覆盖复制
也是覆盖,但是无须打开文件,直接用文件名进行覆盖(其源码还是调用的copyfileobj)。
9.2.3 shutil.copymode(file1,file2)权限复制
仅复制文件权限,不更改文件内容、组和用户,无返回对象。
9.2.4.shutil.copystart(file1,file2)状态复制
复制文件的所有状态信息,包括权限、组、用户和时间等,无返回对象。
9.2.5.shutil.copy(file1,file2)内容和权限复制
复制文件的内容和权限,相当于先执行了copyfile再执行了copysmode。
9.2.6. shutil.copy2(file1,file2)内容和权限复制
复制文件的内容及所有状态信息,相当于先执行了copyfile再执行了copystart。
9.2.7. shutil.copytree()递归复制
递归地复制文件内容及状态信息
3.移动文件
使用函数shutil.move()函数可以递归地移动文件或重命名,并返回目标,若目标是现有目录则src再当前目录移动;若目标已经存在且不是目录,则可能会被覆盖。
4.读取压缩及归档压缩文件
使用函数shutil.make_archive()创建归档文件,并返回归档后的名称。
1.base_name为需要创建的文件名,包括路径
2.format表示压缩格式,可选zip、tar或bztar等
3.root_dir为归档的目录
5.解压文件
使用函数shutil.unpack_archive(filename[,extract_dir[,format]])分析拆档。
1.filename是归档的完整路径
2.extract_dir是解压归档的目标目录名称
3.format是解压文件的格式
10.subsprocess模块
10.1简介
subprocess是python内置的模块,这个模块中的Popen可以查看用户输入的命令行是否存在
1.如果存在,把内容写入到stdout管道中
2.如果不存在,把信息写入到stderr管道
需要注意的是,这个模块的返回结果只能让开发者看一次,如果想多次查看,需要在第一次输出的时候,把所有信息写入到变量中
11.xml与shelve模块
11.1shelve简介
shelve类似于一个key-value数据库,可以很方便的用来保存Python的内存对象,其内部使用pickle来序列化数据,
11.2操作
11.3.xml模块简介
xml协议在各种语言里的都是支持的,在python中可以用以下模块操作xml
11.4configparser模块基本操作
我们先创建一个配置文件(一后缀是.ini/.confg)
11.5 logging模块
11.5.1日志级别
11.5.2默认级别为warning,默认打印到终端
11.5.3为logging模块指定全局配置,针对所有logger有效,控制打印到文件中
11.6logging模块的Formatter,Handler,Logger,Filter对象
1.logger:产生日志的对象
2.Filter:过滤日志的对象
3.Handler:接收日志然后控制打印到不同的地方,FileHandler用来打印到文件中,StreamHandler用来打印到终端
4.Formatter对象:可以定制不同的日志格式对象,然后绑定给不同的Handler对象使用,以此来控制不同的Handler的日志格式
11.7Logger与Handler的级别
logger是第一级过滤,然后才能到handler
12.re模块
12.1正则表达式简介
正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法