python 常用的标准库
程序员文章站
2023-01-01 21:15:49
glob模块 提供了一个函数,用于匹配符合要求的文件: re模块 字符串正则匹配 datetime模块 日期时间 格式化输出也可以这样用: 数据压缩 支持数据打包、压缩的模块:zlib,gzip,bz2,zipfile,以及 tarfile。 压缩数据: 压缩文件: 解压文件: ......
glob模块 提供了一个函数,用于匹配符合要求的文件:
import glob list=glob.glob("*.py") #匹配当前目录下的所有匹配的文件名(包括后缀),以字符串列表的形式返回 print(list) #['test.py', 'test2.py']
re模块 字符串正则匹配
import re list=re.findall(r"\bh","hi hello his") #获取所有符合要求的匹配,以字符串列表的形式返回 print(list) #['h', 'h', 'h'] str=re.sub(r"\bh","h","hi hello his") #用第二个字符串替换第一个正则表达式匹配到的所有子串。字符串不可变,以副本形式返回。 print(str) #hi hello his
datetime模块 日期时间
from datetime import date now=date.today() print(now) #2019-08-07,这是默认的格式 print(now.strftime("%y.%m.%d")) #2019.08.07 格式化时间日期,返回的是时间日期对象对应的字符串 # print(now.strftime("%y年%m月%d日")) #这句代码会报错,年月日时分秒是此模块的关键字词,不能直接写 print(now.strftime('%y{}%m{}%d{}').format("年","月","日")) #2019年08月07日,将返回的字符串格式化 birthday=date(2000,1,1) #构造一个date对象,参数:年、月、日 print(birthday) #2000-01-01 age=now-birthday print(age) #7158 days, 0:00:00 print(age.days) #7158
格式化输出也可以这样用:
str="我是{},今年{}岁".format("张三",12) print(str) #我是张三,今年12岁 str="我是{name},今年{age}岁".format(name="张三",age=12) #指定名称,根据名称来赋值 print(str) #我是张三,今年12岁
数据压缩
支持数据打包、压缩的模块:zlib,gzip,bz2,zipfile,以及 tarfile。
压缩数据:
import zlib data1=bytes("爱我中华爱我中华爱我中华爱我中华爱我中华","utf-8") print(len(data1)) #60 data2=zlib.compress(data1) #压缩数据,参数要是字节。参数不变,返回的是副本 print(len(data2)) #24 data3=zlib.decompress(data2) #解压,参数不变,返回副本 print(len(data3)) #60 print(len(data2)) #24
压缩文件:
import zipfile f = zipfile.zipfile('1.zip', 'w',zipfile.zip_deflated) """ 调用zipfile模块的zipfile类的构造函数,创建一个压缩文件对象 3个参数:压缩文件的文件名、读写权限、压缩类型 压缩要有写的权限,解压要有读的权限 压缩类型有2个常量值:zip_store(默认值,不压缩数据,大小不变),zip_deflated(要压缩数据,文件尺寸变小) """ f.write("1.txt") #压缩文件1.txt f.write("1.mp3") #压缩文件1.mp3 f.write('1.mp4"') #压缩文件1.mp4 #就是说1.zip中有3个文件 f.close()
解压文件:
import zipfile f=zipfile.zipfile('1.zip') #创建压缩文件对象,后2个参数均使用默认值(读+不压缩数据) f.extractall("1") #解压到文件夹1 f.close()
这些模块都具有多个方法,此处只是简略介绍下。
上一篇: 河南省的名吃都有哪些,感兴趣的来看看