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

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

相关文章:

  • VMWare安装常见问题
  • 力扣HOT100之多维动态规划:5. 最长回文子串
  • 【AI News | 20250603】每日AI进展
  • 百万级临床试验数据库TrialPanorama发布!AI助力新药研发与临床评价迎来新基石
  • 如何在 DataGrip 中 连接 Databend
  • 迅为RK3588开发板RKLLM-Toolkit 环境搭建安装 Miniconda
  • 关于easyx头文件
  • 【MSCKF】UpdaterSLAM::delayed_init 和 FeatureInitializer::single_triangulation
  • BGP/MPLS IP VPN跨域解决方案
  • 如何轻松删除 Android 上的文件(3 种方法)
  • 永磁同步电机无速度算法--互补滑模观测器
  • 【高等数学】(1)映射
  • java复习 02
  • git stash介绍(贮藏、暂存)(临时保存当前工作目录中尚未提交的修改)
  • 对接系统外部服务组件技术方案
  • 第四章 4.IP Address (CCNA)
  • iptables常用命令
  • Gephi中的Isometric Layout 插件使用应该用什么数据格式
  • Registry和docker有什么关系?
  • MyBatis 一级缓存与二级缓存
  • flutter 如何做网站/请简述网络营销的特点
  • 公司网站注销/百度视频免费下载
  • 网站建设书籍论文/竞价托管咨询微竞价
  • 做app网站的软件有哪些内容/精准客源引流平台
  • 人人做网站/电商最好卖的十大产品
  • 最稳定的免费的资源共享网站/百度seo软件是做什么的