news 2026/10/22 7:24:24

python杂识--24--Nuitak打包exe

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python杂识--24--Nuitak打包exe

./SUSA-SRA
–statistics.py
–ui.py
–icon.ico

打包后直接把整个 ui.dist 文件夹分发即可:
ui.dist/
├── SUSA-SRA.exe
├── config.ini ← 用户直接编辑这个
└── …

standalone(文件夹) onefile(单文件)
config.ini 位置 exe 同级,固定路径 临时目录,每次变
用户可编辑 直接改 改不了(临时目录)
分发方式 发整个文件夹 发一个 exe
启动速度 快(无需解包) 略慢(每次解包)

最终成功打包命令

python -m nuitka --standalone --enable-plugin=pyside6 --windows-console-mode=force --windows-icon-from-ico=icon.ico --include-data-files=config.ini=config.ini --include-package=polars --include-package=xlsxwriter --include-package=fastexcel --debug --output-filename=SUSA-SRA.exe --output-dir=build ui.py

打包过程中遇到的问题:

  • 1 图标图片
    • [1] 刚开始直接用icon.jpg,报错
    • [2] 直接改后缀icon.ico,还是报错
    • [3] 用在线转ico的网站将将icon.jpg转成.ico,正常,没有报错
  • 2 python代码里不要存在动态导入的库,直接将要使用的库写在每个模块前边通过import …/from … import …导入,否则打的exe包不能找到相应的动态导入的库,会报错
  • 3 对于写在每个模块前边的第三方库不用include-package也可以
  • 4 对于gui库: pyside6、pyqt 需要使用-enable-plugin参数,刚开始没有也报错
  • 5 我此处的配置文件config.ini刚开时没有用–include-data-files包含进去,也是打包后程序启动失败,当有多个其它文件时,可能需要–include-data-dir和include-package-data这两个参数,具体没有区分此处没有了解
  • 6 Nuitka可能跟部分第三方库的某些方法不兼容,打的exe包执行时程序崩溃退出。此处代码里刚开始用了polars的pd.write()写数据到本地,直接使用python ui.py启动程序执行并点击执行按钮没有报错,可用Nuitka打的包启动程序后点击执行按钮崩溃掉了,最终发现是Nuitka与polars的pd.write()不兼容,最终换了xlsxwriter,打的包执行没有问题
  • 7 --windows-console-mode=force:disable时启动exe时会有黑框,可以从cmd里启动exe,此处比如cmd启动SUSA-SRA.exe可以从cmd里看到代码里加的print()日志;force时启动exe时不会有黑框。
  • 8 standalone 和 onefile中建议使用standalone
  • 9 自己写的代码的模块名不要跟python内置的库/模块名冲突,否则打包会报错。此处的statistics.py就跟python内置的statistics库冲突,打包失败,后来将statistics.py换成susar_core.py没有报错
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/22 7:21:40

【脚本】 【Linux】重命名网卡

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/22 7:19:57

Lightpanda 无头浏览器完整上手指南:1/16 内存跑满 JS 渲染页面

Lightpanda 无头浏览器完整上手指南:1/16 内存跑满 JS 渲染页面 【免费下载链接】browser Lightpanda: the headless browser designed for AI and automation 项目地址: https://gitcode.com/GitHub_Trending/browser32/browser Lightpanda 是一个用 Zig 从…

作者头像 李华
网站建设 2026/10/22 7:14:26

Day 14 | 接入 MCP 协议:让商城拥有 AI 工具箱

摘要:AI 只会聊天不够,还得能操作你的系统。今天用 MCP(Model Context Protocol)协议,把商城的商品查询、下单、物流追踪包装成 AI 可调用的工具。AI Agent 接到一句"帮我买两瓶精华水",就能自动…

作者头像 李华