当前位置:首页>python>Python打包exe-Nuitka

Python打包exe-Nuitka

  • 2026-10-24 05:23:43
Python打包exe-Nuitka

开发Pyqt程序最终使用是要打包成桌面运行程序,本次插播一篇打包教程。

一、PyInstaller、Nuitka两者区别

    • PyInstaller本质是打包器(Packager),并非编译器;打包的文件启动较慢(需解压资源、加载解释器),运行速度与原生 Python 几乎一致。
    • Nuitka本质是编译器(Compiler),更准确说是 “Python 转 C 编译器”。打包的文件通常能获得更快的启动速度和运行性能(尤其对计算密集型代码),因为绕过了部分解释开销,加密效果较好。
二、Nuitka的安装及使用
Nuitka打包的速度很慢,但是运行速快,打包的文件相比PyInstaller也小一些。
1、安装

首先安装编译环境,Nuitka 默认使用 MSVC(Microsoft Visual C++),推荐安装:Microsoft C++ Build Tools(免费,无需完整 Visual Studio)

  • 下载地址:

    →https://visualstudio.microsoft.com/visual-cpp-build-tools/

  • 安装时勾选:

    • ✅C++ 生成工具

    • ✅Windows 10/11 SDK

    • ✅CMake 工具(可选,但推荐)

    • ✅ 对应你 Python 位数的工具链(通常x64/x86)

  • 验证是否成功:

    • 打开“x64 Native Tools Command Prompt”(开始菜单搜索),运行

    • 输入:cl

    • 若显示 Microsoft C/C++ 编译器版本 → ✅ 成功。

然后进入python解释器执行如下指令:

pip install nuitka -i https://pypi.tuna.tsinghua.edu.cn/simple
2、Windows 下常用参数速查
参数
说明
--onefile
打包为单个 EXE 文件
--windows-disable-console
隐藏控制台窗口
--output-dir=dist
指定输出目录(避免根目录杂乱)
--windows-icon=icon.ico
给 EXE 设置自定义图标(ICO 格式)
--nofollow-imports
排除不必要的依赖(减小 EXE 体积)

nuitka --enable-plugin=tk-inter

Tkinter支持
nuitka --enable-plugin=pyqt6
Qt支持
nuitka --jobs=4 
使用多核并行编译提升打包速度
3、案例演示
只需要把主函数所在文件写进路径即可:
# 单文件、导出路径、加图标python -m nuitka --standalone --onefile --jobs=4 --output-dir="E:\python_project\packge" --windows-icon-from-ico="E:\python_project\packge\img\pdd_img.ico" .\statistic.py
# 使用pyqt6,单文件,禁用控制台python -m nuitka --onefile --enable-plugin=pyqt6 --windows-disable-console --jobs=4 --output-dir="E:\python_project\packge"  --windows-icon-from-ico="E:\python_project\packge\search.ico" .\data_search_V2.py

最新文章

随机文章