ZIP_STORED和ZIP_LZMA没有compresslevel参数!

在使用py的zipfile库进行压缩的时候,有这么一个函数:

复制代码
def write(self, filename, arcname=None,
              compress_type=None, compresslevel=None):

一般我们在压缩文件进去的时候都是用这个函数的;

对于compresslevel这个函数,它是用来指明压缩等级的;

我使用ZIP_LZMA模式进行压缩,并且尝试指定compresslevel;神奇的事情出现了:不管怎么调level,压缩出来的大小都不会有改变;

把write函数让ai解释,ai信誓旦旦说这个参数接受0-9;

不信邪的我查了zipfile里面的参数介绍,原文如下:

复制代码
compresslevel: None (default for the given compression type) or an integer
                   specifying the level to pass to the compressor.
                   When using ZIP_STORED or ZIP_LZMA this keyword has no effect.
                   When using ZIP_DEFLATED integers 0 through 9 are accepted.
                   When using ZIP_BZIP2 integers 1 through 9 are accepted.

所以,ZIP_STORED和ZIP_LZMA接受的compresslevel参数根本就没有意义!

这也很好理解,store本身就不压缩,就是直白储存,你指定level自然没有意义;我现在用的这个ZIP_LZMA模式本身就是一个高压缩比的算法,再指定level,那不就是玩呢

再吃了一个教训:细致的问题多看源码,少问ai

相关推荐
源码之家2 分钟前
计算机毕业设计:基于Python与协同过滤的美食推荐系统 Django框架 可视化 协同过滤推荐算法 菜谱 食品 机器学习(建议收藏)✅
爬虫·python·机器学习·django·毕业设计·课程设计·美食
2501_921649494 分钟前
RESTful 金融数据 API 文档:设计原则与最佳实践
开发语言·后端·python·金融·restful
学以智用6 分钟前
Python 批量重命名文件工具(完整示例)
后端·python
badhope6 分钟前
如何将小厂Java项目包装出高并发架构演进感
python·程序员·ipython
linzᅟᅠ10 分钟前
狼人杀 Agent:让 LLM 在信息不对称博弈中推理、欺骗与协作
人工智能·python·语言模型
愤豆18 分钟前
10-Java语言核心-JVM原理--字节码与执行引擎详解
java·jvm·python
未来转换22 分钟前
Python-web开发之Flask框架入门
前端·python·flask
Birdy_x28 分钟前
接口自动化项目实战(8):请求封装
python·自动化·测试用例
好家伙VCC44 分钟前
**发散创新:用 Rust实现数据编织(DataWrangling)的高效流式处理架构**在现
java·开发语言·python·架构·rust
编程大师哥1 小时前
Python 爬虫
python