13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

Python的打包神器—Nuitka!

一. pyinstaller和Nuitka使用感受

1.1 使用需求

这2个工具同时都能满足项目的需要:

1.2 使用感受

2个工具使用后的最大的感受就是:

二. Nuitka的安装及使用

2.1 nuitka的安装

2.2 使用过程

对于第三方依赖包较多的项目(比如需要import torch,tensorflow,cv2,numpy,pandas,geopy等等)而言,这里最好打包的方式是只将属于自己的代码转成C++,不管这些大型的第三方包!

以下是我demo的一个目录结构(这里使用了pytq5框架写的界面):

├─utils//源码1文件夹├─src//源码2文件夹├─logo.ico//demo的图标└─demo.py//main文件

使用以下命令(调试)直接生成exe文件:

nuitka --standalone --show-memory --show-progress --nofollow-imports --plugin-enable=qt-plugins --follow-import-to=utils,src --output-dir=out --windows-icon-from-ico=./logo.ico demo.py

这里简单介绍下我上面的nuitka的命令:

经过1min的编译之后,你就能在你的目录下看到:

├─utils//源码1文件夹├─src//源码2文件夹├─out//生成的exe文件夹    ├─demo.build 
└─demo.dist └─demo.exe//生成的exe文件├─logo.ico//demo的图标└─demo.py//main文件

当然这里你会发现真正运行exe的时候,会报错:​​no module named torch,cv2,tensorflow​​等等这些没有转成C++的第三方包。

这里需要找到这些包(我的是在software\python3.7\Lib\site-packages下)复制(比如numpy,cv2这个文件夹)到​​demo.dist​​路径下。

至此,exe能完美运行啦!


当前名称:Python的打包神器—Nuitka!
链接地址:http://cdbrznjsb.com/article/codeohg.html

其他资讯

让你的专属顾问为你服务