python编译exe运行慢_加快编译的python程序的速度?

我有一个相当“繁重”的python程序,我想编译成exe.

该程序具有大量的导入,但是使用PyQT4框架,我在可见启动画面的同时加载了这些导入.

我使用pyinstaller(在cmd中)将此程序编译为单个.exe文件:

python %pycompile_file% --onefile --noconsole --icon=Icon.ico Script.pyw

但是,即使启动屏幕设置为在导入大量模块(特别是包括sympy)的同时显示,并且即使在通过python运行时可以立即显示并有足够的时间显示;

运行生成的.exe会导致在启动屏幕显示之前出现严重的延迟,该延迟仅在加载整个程序之前的很短时间内显示.

我的怀疑是,从.pyw到.exe的编译加快了实际的“代码”(因此,启动画面变短了),但是却减慢了程序执行的实际“开始”速度.

如何解决此问题,以使.exe不会“启动得太慢”?

(我怀疑编译为–onefile会很大,但是我需要将.exe文件作为所有.dll的一个文件夹,并且我不知道如何使pyinstaller这样做)

谢谢!

Windows 7的

python 2.7.2

py安装程序

PyQt4

解决方法:

Pyinstaller不会将python代码转换为本机代码,它只是将python字节码和字节码解释器打包到一个文件中-一旦启动开销消失,实际处理将以完全相同的速度进行.

Pyinstaller的–onefile模式将使您的应用启动缓慢,因为它必须先将所有库解压缩到一个临时目录中,然后才能加载它们.在PyQT的情况下,这些库很大,因此延迟会很明显.使用单目录模式,以便DLL不需要解压缩,应该更快.

标签:pyqt,compiler-construction,python,qt,pyinstaller

来源: https://codeday.me/bug/20191201/2083279.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值