Python — lzma压缩
一、异常
lzma这个包中只提供了一个异常:lzma.LZMAError。这个异常只有如下情况会抛出:
-
压缩或解压时发生错误
-
初始化压缩器与解压器的状态时发生错误
二、读写压缩文件
1、接口1
lzma中提供了一个借口,专门用来访问压缩文件:lzma.open(filename, mode="rb")
(1).filename参数,通常是一个字符串表示的文件路径
(2).mode参数是文件模式,文件模式可以是:
-
文本模式:`"rt", "wt", "xt", "at"
-
二进模式:"r", "rb", "w", "wb", "x", "xb", "a" , "ab"
更多Python视频、源码、资料加群683380553免费获取
2、例子1
(1).创建压缩文件
(2).读取压缩文件
除了直接读取意外,我们还可以使用一个解压缩软件来解压缩我们创建的文件
然后使用文本编辑器打开我们解压的软件,看看编码是不是正确
3、接口2
lzma.compress(data)
该函数可以压缩数据(字节对象),反悔一个数据被压缩的字节二进制对象。
lzma.decompress(data)
解压一个已经被压缩过后的数据(字节对象),反悔一个解压的二进制数据对象。
注意: 如果数据是几个独立的压缩流的连接,那么将会一起解压所有这些流,并且反悔结果的连接
4、例子2
(1).在内存中进行压缩
可以看到,一个原来2554字节的文件,被压缩到只有768字节
注意:只有文件有一定大小的时候才能体现出压缩的优势。如果对一个普通的字符串压缩,可能反而变大
(2).解压一个已经被压缩的数据
如此,就完成了我们对数据的压缩和解压。
本文来自博客园,作者:I'm_江河湖海,转载请注明原文链接:https://www.cnblogs.com/jhhh/p/16767101.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)