欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > ZIP_STORED和ZIP_LZMA没有compresslevel参数!

ZIP_STORED和ZIP_LZMA没有compresslevel参数!

2025/3/31 19:32:12 来源:https://blog.csdn.net/m0_74024372/article/details/146476784  浏览:    关键词: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 integerspecifying 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

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com