当前位置: 首页 > web >正文

Python-nuitka

Python-nuitka

  • 1 nuitka的特点
  • 2 安装nuitka
  • 3 通用选项
  • 4 打包示例

1 nuitka的特点

nuitka是一个用来将python代码打包为exe可执行文件,方便其在没有相关环境的windows系统上运行的工具。其原理为:将python代码(自己写的部分)转换成C代码,以提高运行的速度。

2 安装nuitka

安装nuitka,在cmd窗口,输入指令进行网络安装

pip install nuitka

3 通用选项

--standalon 使得打包结果与本地的Python环境无关,即使得打包结果具备可移植性。
--onefile 使得打包结果为一个可执行文件,而不是一个文件夹。--onefile选项下打出来的包本身就具备可移植性,因此不需要额外加上 --standalone--onefile 打包结果像绿色软件,仅一个可执行文件;--standalone的打包结果像经过安装的软件,文件夹下包含运行所需要的文件和程序入口。

--lto用于启用链接时间优化。链接时间优化是一种编译器优化技术,它可以在编译和链接阶段对整个程序进行优化,而不仅仅是对单个源文件进行优化。通过启用lto,您可以让编译器在链接时对生成的目标代码进行更深入的优化,提高程序的性能和执行效率
--remove-output 在打包结束后,清理打包过程中生成的临时文件。
--enable-plugin= 启用插件,等号后跟插件名。在要打包的Python代码使用了一些特殊的包时,需要启用插件,Nuitka才能够正确打包。如:如在代码中使用了PySide6,就需要加上--enable-plugin=pyside6。具体的插件列表可以使用nuitka --plugin-list来查看。
--disable-console 在运行打包后的程序时,不会弹出控制台,而是直接运行GUI程序。
--include-package-data= 包含给定软件包名称中的数据文件,等号后软件包名称。有的时候Nuitka并不能正确分析出一些Python软件包所需要使用的数据文件,在运行程序时提示FileNotFoundError等错误,此时就需要使用该选项。如:--include-package-data=ultralytics
--include-data-files= 按文件名包含数据文件,等号后的格式为<SRC=DEST>。SRC指的是文件夹的路径,DEST指的是文件夹相对于打包结果的路径,其中DEST只能使用相对路径。如:--include-data-files=/Users/admin/Downloads/yolov5n.pt=./yolov5n.pt
--include-data-dir= 包含文件夹中的数据文件,等号后的格式为<SRC=DEST>。使用方法与--include-data-files=相同。

4 打包示例

python -m nuitka --standalone --remove-output program_name.py
python -m nuitka --onefile --remove-output program_name.pypython -m nuitka --standalone --disable-console --enable-plugin=pyside6 --remove-output program_name.py
python -m nuitka --macos-create-app-bundle --disable-console --enable-plugin=pyside6 --remove-output program_name.py
http://www.xdnf.cn/news/10969.html

相关文章:

  • LARWINER拉威兒艺术珠宝携手郭培GUOPEI高定服装 共谱「宝光凝粹,锦绣华裳」
  • 依赖注入-@Resource和@Autowired
  • 多数据库学习之星瑞格[SinoDB]数据库安装部署指南
  • CppCon 2014 学习:CONVERGENT EVOLUTION
  • Modbus转Ethernet IP网关助力罗克韦尔PLC数据交互
  • Ubuntu系统 | 本地部署ollama+deepseek
  • 青少年近视防控的科学抉择:长期佩戴与间断使用的深度解析
  • MicroPython+ESP32 连接接WIFI
  • 【散刷】二叉树基础OJ题(二)
  • 基于VLC的Unity视频播放器(四)
  • 如何写一条高效分页 SQL?
  • RK3568驱动指南|第十二篇 GPIO子系统-第130章 GPIO的调试方法
  • 数据安全管理进阶:81页 2024数据安全典型场景案例集【附全文阅读】
  • MyBatis常用注解全解析:从基础CRUD到高级映射
  • Shell脚本编程入门与实战指南
  • Qwen2.5-VL 视觉编码器的SwiGLU
  • IT运维工具的选择标准有哪些?
  • [蓝桥杯]求解台阶问题
  • PCI DSS培训记录
  • 便携式雷达信号模拟器,定义复杂电磁环境模拟新标准
  • Docker 容器化:核心技术原理与实践
  • 微软PowerBI考试 PL300-Power BI 入门
  • Vue2 父子组件数据传递与同步详解
  • 访谈 | 吴恩达全景解读 AI Agents 发展现状:多智能体、工具生态、评估体系、语音栈、Vibe Coding 及创业建议一文尽览
  • vue实现点击单选或者多选模式
  • 简单爬虫框架实现
  • JavaScript 字符串的常用方法有哪些?
  • SpringCloud 分布式锁Redisson锁的重入性与看门狗机制 高并发 可重入
  • ALLEN BRADLEY特价型号1715-OB8DE 模块
  • 屈原精神的深度剖析:阶级局限与时代启示