基础入门教程:使用Nuitka将Python打包为.exe文件
Nuitka是一个将Python代码编译成C++或C代码的工具,然后生成可执行文件。首先,安装Nuitka:`pip install nuitka`。创建一个Python脚本,例如`hello.py`,内容为`print("Hello, World!")`。在命令行中,导航到脚本所在的目录,运行`nuitka --onefile hello.py`。这将生成一个名为`hello.exe`的可执行文件。注意,生成的可执行文件可能与您的操作系统不兼容。要解决此问题,请使用相应的工具链(如mingw64)进行构建。
写了一个小程序需要打包成exe,试了pyinstaller,打包出来超过1G,看网上说Nuitka效果很好,决定尝试一下。
1、创建python≤3.8版本虚拟环境
因为Anaconda自带的base虚拟环境中python版本3.10,于是在Anaconda Prompt下面使用:
condacreate-nguipython==3.7
创建一个名叫gui的虚拟环境,至于为什么python版本这么低,原因参看链接中Requirements部分
2、安装Nuitka所需的C编译器——Mingw64
从这里下载MinGW64,然后选择与Python匹配的64位或32位,一般选择x86_64-win32-sjlj。将其安装到C:\MinGW64或\MinGW64(与Nuitka运行相同的磁盘根目录)以自动找到它。
3、安装Nuitka
进入Anaconda Prompt里面,**之前的虚拟环境:
condaactivategui
然后,再安装,如下三选一
pipinstallnuitka#或者python-mpipinstallnuitka#或者condainstall-cconda-forgenuitka
4、创建一个hello.py程序
importtimedefjob():print("hello")if__name__=="__main__":whileTrue:job()time.sleep(1)
加个延时是为了后面显示需要,我看很多示例程序都是只用一句print,打包好程序exe,点击运行一下就退出,根本看不到输出信息。
5、打包
利用Anaconda Prompt**虚拟环境,切换到py程序所在文件夹,然后
nuitka--mingw64--show-progress--show-sconshello.py