Python zipfile 性能问题

2021-02-07 10:48:50 +08:00
 U87

众所周知 zipfile 是 python 解压和压缩文件的库, 我这边用 zipfile 的 extractall 方法解压一个大文件 600 多 M 的压缩包,竟然要半个小时。。。想问下是 zipfile 本身性能问题吗,有什么快速方法吗

1935 次点击
所在节点    Python
4 条回复
laminux29
2021-02-07 11:55:54 +08:00
zipfile 是 Python 实现的,不是 C 库,这是性能差的关键。

如果需要压缩的文件数量很多,建议用命令行或 cpp 来进行压缩或解压缩。
noqwerty
2021-02-07 12:10:20 +08:00
subprocess.check_output() 用 7zip 之类的软件去做解压吧,花很多时间在这上面真的不值得。zipfile 自己文档里都写了 Decryption is extremely slow as it is implemented in native Python rather than C.
U87
2021-02-08 09:26:46 +08:00
@noqwerty 好的,谢谢,zipfile 文档里那段话我也看到了,但同事拿相同的包用 java 解压,几十秒。。
U87
2021-02-08 14:25:26 +08:00
@laminux29 用命令行了,一开始也想过,但觉得没有用 zipfile 优雅

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/751982

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX