gpt4 book ai didi

python - Pyinstaller exe 文件有多大?

转载 作者:行者123 更新时间:2023-12-03 23:45:22 25 4
gpt4 key购买 nike

为这个极其模糊的问题道歉,但我一直在努力减少 Pyinstaller .exe 的大小,我决定检查更有经验的 Python 开发人员对此类文件的一般文件大小的看法。我一个人工作,所以我真的不知道还能问谁。
我的脚本需要相当多的模块,包括 APscheduler(包括 SQLAlchemy)、sqlite3、tkinter、datetime、patool、shutil,但最终它是一个相对简单的程序,应该作为 Windows 后台服务运行(最终目标)。没有使用 pandas、numpy、scipy、keras 或其他大型库。我还包括 5 个用于 GUI 的 .png 图像(总共大约 350 kB)。这将创建一个 15.5 MB 的 .exe,并且在运行时,该程序会占用 30 MB 的物理内存。
所有在线建议都在谈论使用 Python(而不是 Anaconda)为文件创建单独的虚拟环境(我现在正在努力这样做,但它一直很痛苦..)。查看 Pyinstaller 创建的 dist 文件夹,大多数大型 .dll 似乎对于程序的运行是必不可少的(mfc140u.dll、python37.dll、tcl、tk、multiprocessing、sqlite、..),但似乎没有成为我的 conda 站点包中安装的 pandas 或 tensorflow 或其他库。我还应该提到这是我的第一个运行程序,所以我认为代码架构没有应有的效率。
特别是 APScheduler 有很多依赖项,所以我不确定将它隔离到单个虚拟环境是否会对大小产生如此巨大的影响。然而,有人告诉我该文件应该小得多,这样它就不会给操作系统带来负担——用 C# 创建的一个类似但稍微简单的软件只有 64 KB。
有经验的开发人员会说考虑到所有库/依赖项,这个文件大小是正常的,除了在纯 Python 中创建单独的 venv 之外还能做什么?
编辑:经过 3 天并与数千个错误作斗争后,我设法使脚本在具有独立虚拟环境的系统 Python(而不是 Anaconda)中运行,以便仅安装我需要的包。结果:文件只小了大约 2 MB。所以绝对不值得。但对于其他人来说,我猜可能是这样。

最佳答案

15 兆字节的磁盘和 30 兆字节的内存在今天根本不算多。 (恕我直言,无论谁告诉你它会“给操作系统带来负担”,都生活在 Windows 95 的某个地方,或者更早。)
考虑到 Python 解释器、标准库、附加库以及所有都捆绑在其中,该文件大小是正常的;一个 64 KB 的 C# 程序从 Windows 附带的 C# 库和虚拟机中受益。
相比之下,在 JavaScript 领域,桌面应用程序往往是 Electron基于,您从大约 100 兆字节的磁盘使用量开始......

关于python - Pyinstaller exe 文件有多大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63138311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com