桓楠百科网

编程知识、经典语录与百科知识分享平台

Python打包对比实测:Nuitka vs PyInstaller,谁更快更安全?

关于Python打包,经过我的实际测量

如果用pyinstaller打包

打包成多文件,程序载入时间大概470毫秒左右

打包成单文件,因为有个自解压的过程,相比多文件不需要自解压,要稍微慢一些,实际载入时间大概760毫秒左右。

如果用nuitka打包

打包成多文件,程序载入时间大概140毫秒左右。

打包成单文件,程序载入时间大概380毫秒左右。

当然你的电脑硬件配置不一样,实际测试目标拍摄程序不一样,可能会有一些误差,以上测试结果仅供参考。

总的来说用nuitka打包确实相比pyinstaller有更多优势。

相比pyinstaller,nuitka能更好的保护你的程序:用pyinstaller打包很容易被反编译,但是用nuitka想对它进行反编译可能就比较困难

缺点嘛,就是打包过程非常慢,甚至比rust编译打包都要慢,rust对同一个库只需要打包一遍就够,第二次打包可以用到缓存直接跳过

但是nuitka可能就每次打包,每次都很慢

还有一个不得不提的问题,经过我实测,用nuitka打包出来的文件会有一些奇怪的bug,不过幸运的是不影响程序运行,它是在运行结束后才报的错,

但是如果我用pyinstaller打包就没有报这个错,所以我觉得这个锅还是得nuitka来背,

AttributeError: 'NoneType' object has no attribute 'curl_easy_cleanup'

当然你的程序没有用到我测试用的软件包可能就不会遇到这个错

对了,关于用nuitka打包再补充一点,如果你的电脑安装了微信开发者工具,可能就不能顺利打包,打包前需要修改一些设置,否者可能会有冲突

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言