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

新一代Python专业编译器Nuitka简介

新一代Python专业编译器Nuitka简介

A Brief Introduction to the New Generation Python Complier - Nuitka

By Jackson@ML

0. 引言

新一代Python编译器Nuitka面世。什么??Python编译器,是真的吗?
答案是:真的。

长久以来,我们都使用Python软件包自带的Python解释器,在程序运行时发挥作用,经过解释器运算后,输出程序的结果。

而现在,Python有了新一代编译器(compiler),名叫Nuitka,并且,它与Python3x版本和Python 2.6-2.7版本兼容。

1. Nuitka特性

创造Nuitka,就是为了解决Python过去没解决的问题,即高性能。它会将应用程序在运行时提速并且提高性能。

它的主要功能会满足性能、IP保护和部署

2. 获取Nuitka

打开Chrome浏览器,访问Nuitka官网链接:https://nuitka.net,如下图:

在这里插入图片描述
访问Python第三方库官网:https://pypi.org,可以看到,Nuitka于2025年4月28日刚刚发布。

在这里插入图片描述

3. 安装Nuitka

1) 安装Nuitka,与安装其它第三方库没有什么两样,执行以下命令即可:

$ pip install nuitka

*注:为了保险,也可以执行带有Python的安装命令:

$ python3 -m pip install -U nuitka

2) 或者,激活虚拟环境后,运用UV安装该库:

$ uv pip install nuitka

执行结果如下图:

在这里插入图片描述

4. 验证版本

为了验证安装版本,在Terminal下执行命令:

$ nuitka –version

执行结果如下图:
在这里插入图片描述
得出Nuitka现有版本为2.7。

5. 创造并编译Python程序

现在,让我们一道,立刻创建并编译Python程序。

打开VS Code来编写第一个Python应用程序hello.py,代码如下:

def hello():return "Hello, world!"def main():print(hello())if __name__ == "__main__":main()

然后,在VS Code的Terminal运行以下命令:

$ python3 -m nuitka hello.py

执行结果如下图:

在这里插入图片描述
选择Yes,结果如下:

在这里插入图片描述
查看当前目录列表,执行命令:

$ ls -la

在这里插入图片描述
除源文件外,编译生成了以hello为前缀的三个文件:

  • hello.bin,
  • hello.build,
  • hello.sh

6. 运行应用程序

在Terminal中,运行Python应用程序,执行二进制文件:

$ ./hello.bin

可以看到,程序执行结果为:Hello, world!
在这里插入图片描述
同时,旗下生成的脚本文件,也可以执行:

$ ./hello.sh

在这里插入图片描述

7. Stand-alone模式运行程序

如果以stand-alone模式运行程序,产生的结果略有不同。执行以下命令:

$ python3 -m nuitka hello.py –standalone

执行结果如下图:
在这里插入图片描述
检查文件列表,执行命令:

$ ls -la

发现多出了一个新文件hello.dist.
执行Python二进制文件:

$ ./hello.bin

仍然出现同样结果,如下图:
在这里插入图片描述
编译没问题!
如果要查看该文件大小,执行命令:

$ du -h hello.py
$ du -h hello.bin

则执行结果如下图:

在这里插入图片描述

看到hello.dist远远大于二进制文件,其下包含二进制文件和*.dylib文件,如下图:

在这里插入图片描述

8. Nuitka必备环境

Nuitka无疑是功能强大的Python编译器,那么,要想让Nuitka运行丝滑,需满足以下必备条件:

1) C编译器
用户需要C语言编译器,支持C11或者支持就版本的Python,用于C++03的C++编译器。
2) Python软件包
研发Nuitka就是为了Python,因此,它支持的Python版本包括Python 3(3.4到3.13)以及Python 2(2.6和2.7)。如果稳定的Python版本不在此列出,那么,别担心,它很快就给有开发者跟进推出。
3) 操作系统
运行Nuitka的操作系统,概括的说,包含Windows(32位,64位),Linux, Android, FreeBSD, OpenBSD, macOS等。
4) 硬件架构
Nuitka运行所需的硬件支持架构有x86, x86_64(AMD64)以及ARM处理器。


Python技术好文陆续推出,敬请关注和点赞,收藏👍。
您的认可,我的动力!

相关阅读:

  1. 新一代AI智能体开发环境Cursor应用指南
  2. 用Pythong爬取Accuweather天气预报数据
  3. 新一代Python包管理器UV应用指南
  4. 2025最新版Coze AI智能体应用指南

相关文章:

  • 20. LangChain电商场景:构建智能客服与个性化推荐系统
  • MySQL 强制使用特定索引
  • Unity学习笔记二
  • (undone) xv6-labs-2020 补充 LAB lazy page allocation (Day11 xv6-2020 LAB5 懒分配)
  • py实现win自动化自动登陆qq
  • Android View#post()源码分析
  • tinyrenderer笔记(Shader)
  • C语言数组和函数的实践———扫雷游戏
  • APP自动化测试(一)
  • 9-4 USART串口数据包
  • [HOT 100] 1377. T 秒后青蛙的位置
  • 在若依里创建新菜单
  • uniapp开发11-v-for动态渲染list列表数据
  • Beetle 树莓派RP2350 - 桌面时钟摆件
  • 探索Hello Robot开源移动操作机器人Stretch 3的技术亮点与市场定位
  • Banana Pi BPI-CM6 是一款八核 RISC-V 模块,兼容 Raspberry Pi CM 载板
  • POI创建Excel文件
  • Android setContentView()源码分析
  • [学习]RTKLib详解:rtkcmn.c与rtkpos.c
  • Java实现堆排序算法
  • 吴清:全力支持中央汇金公司发挥好类“平准基金”作用
  • 象屿集团:对去化压力大、市场有效需求不足区域坚决暂停投资,打造多元上市路径
  • 杨国荣︱《老子智慧八十一讲》及其他
  • 有乘客被高铁车门夹住?铁路回应:系突感不适下车,未受伤,列车正点发车
  • 岳伟华任北京大学第六医院院长,陆林院士卸任
  • 外交部亚洲司司长刘劲松就日本民用飞机侵闯我钓鱼岛领空向日方提出严正交涉