首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >减少Pyinstaller生成的可执行文件的文件大小的一些一般技巧是什么

减少Pyinstaller生成的可执行文件的文件大小的一些一般技巧是什么
EN

Stack Overflow用户
提问于 2013-08-31 21:02:34
回答 1查看 9.7K关注 0票数 9

我正在使用Pyinstaller将python脚本转换为可执行文件,该脚本包含来自不同包的多个导入,如nltk、begin、json和其他四个。生成的10行代码的可执行文件是54MB,这是不切实际的高,我知道它将所有模块打包在一个文件中,但它是否会使它变得如此大,因为python脚本本身只有2KB。

减小".exe“文件大小的一些一般技巧是什么?

我使用下面的命令来转换脚本

代码语言:javascript
复制
>pyinstaller.py  -F  -o output check.py

我只导入了单个函数,而不是整个模块,比如:

代码语言:javascript
复制
from nltk.metrics.agreement import AnnotationTask

导入的模块有独立的函数,我只有选择地导入了3-4个函数,但这似乎对生成的exe文件大小没有任何影响,是否所有函数都被浪费地导入到exe文件中?如何避免这种情况?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-31 21:34:56

您正在比较两个完全不同的东西,您生成的exe文件不仅包含您的文件,还包含Python解释器和所有导入的模块。查看我在windows下安装的python2.7,我发现它有83MB大小。ntlk和co可能也不是最小的库,您必须以某种方式将它们全部包含在可执行文件中。作为比较,我的一个中小型项目使用cx_freeze会产生大约23MB的内存(其中包括10MB的QT4 dll),所以你可以试一下。

您也可以使用UPX压缩可执行文件,如here所述,这可能会有所帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18548447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档