有人能解释下一个谜题吗?
我创建了大约37 [MB]大小的二进制文件。 在Ubuntu中使用终端进行压缩。 用不了1 [秒]。 然后,在编程中使用zipfile模块]引出它也花了大约1 [秒]。
然后,您试图解压缩已创建的zip文件。 Ubuntu使用终端。 这不到1秒[秒]。
在python中,解压缩的代码将使用zipfile模块执行将近37秒。 什么样的想法?
解决方法:
我也在努力用Python解压缩/解压缩/解压缩zip文件。 然后,“创建ZipFile对象,循环. namelist ()”,读取文件并写入文件系统,这种低级方法似乎并不是很适合Python。 所以我开始挖掘zipfile objects。 没有好的文档,我认为它涵盖了所有的对象方法:
来自zipfile导入zipfile
file path='/SRV/pydoc files/packages/ebook.zip '
zip=zipfile (文件路径)
是灾难恢复(zip )
['NameToInfo ',' _GetContents ',' _RealGetContents ',' __del__,' __doc__,' _ enter _ '," “comment”、“compression”、“fp”、“getinfo”、“infolist”、“mode”、“namelist”、“open”、“priname”
我们去“全部”的方法就像tarfile’sextractall一样! (python 2.6和2.7,但不是2.5 )
并表示关注; 文件ebook.zip为84.6 MB (主要为pdf文件),未压缩文件夹为103 MB,默认情况下已压缩到MacOSx 10.5下的“归档实用程序”中。 所以,我们对Python的timeit模块也做了同样的事情:
来自时间it输入时间
t=timer (' file path='/SRV/pydoc files/packages/ebook.zip ';
. extract _ to='/tmp/pydoc net/build ';
.来自zipfile import zipfile;
. zipfile(filepath ).extract all (path=extract _ to ) ')
t.timeit(1)。
1.8670060634613037
在装载量大的机器上,不到2秒钟,其他APP应用程序使用了90%的内存。
我希望这能帮到别人。
标签: python、ubuntu、linux、zip、unzip
资料来源: https://codeday.me/bug/2019 07 04/1382136.html