aardio + Python 可视化快速开发桌面程序,一键生成独立 EXE

🚀 优质资源分享 🚀

学习路线指引(点击解锁)知识定位人群定位
🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战💛入门级手把手带你打造一个易扩展、更安全、效率更高的量化交易系统

网络上大家分享的 aardio + Python 混合开发的文章很多,不得不说 aardio 与 Python 混合开发是真的简单 !

▶ 快速入门

推荐几个快速上手教程:《 aardio 快速入门 - 语法速览 》

在 aardio 中可直接创建 Python 工程:

aardio 可视化开发图形界面非常方便,相关的教程、开源项目都很多,这里就不多说了。

至于 aardio + Python 互调也非常简单,示例:

import console;
import py3; //导入 Python 模块。
var itertools = py3.import("itertools")//调用 Python 函数,支持纯 aardio 类型参数
var permutations = itertools.permutations({"a","b","c"});//调用 Python 内置函数 list
var pyList = py3.list(permutations);//遍历 Python 对象成员
for( item in pyList.each() ){console.log(item); //像 aardio 对象一样使用 Python 对象
}console.pause();

aardio 自带的 Python 范例也非常多,请打开**「 aardio 范例 > 调用其他语言 > Python 」**查看。

▶ 一键成独立 EXE 文件

纯 aardio 程序可以方便地生成独立 EXE 文件,不需要虚拟化,不需要释放临时文件 —— 这是因为 aardio 自带的文件函数都自动兼容了 EXE 内嵌资源路径。 即使用到了一些第三方的 DLL 组件一般也可以自内存加载,即使是 .NET 程序集也可以方便地自内存加载。

但是 Python 不能这样搞,aardio + Python 生成的软件就必须带上 Python 解释器,*.py 文件一般也是放在硬盘上。

下面是我用 aardio + Python 范例工程生成 EXE 得到的文件:

上面的 PyApp.exe 需要带上 /lib/ , /py/ 这几个目录才能运行。当然,这里面已经自带了绿色的 Python 运行时,用户电脑不再需要安装 Python 。

但是很多用户喜欢小轻快的独立 EXE 文件。我经常被问到这个问题,怎样将 aardio + Python 开发的软件转换为独立 EXE。

其实用免费的虚拟化封包工具( 不需要额外释放临时文件 )  Enigma Virtual Box 就可以将上面的几个文件转换为独立 EXE 文件。我基于 Enigma Virtual Box 写了一个扩展库 process.vb ,可以一键完成所有操作。

新版 aardio 生成 EXE 后多了一个**「转换为独立 EXE」**按钮。

点击**「转换为独立 EXE」**以后生成了新的 PyApp.exe 。然后我们可以删掉其他的 /lib/, /py/ 目录,因为 PyApp.exe  不再需要这些目录了(已经封包到 PyApp.exe  内部了)。

包含了 Python 运行时的  PyApp.exe 体积为 19MB,打个压缩包其实只有 7 MB,这个体积相比 Electron 什么的算是非常小了。

▶ process.vb 扩展库

Enigma Virtual Box 的主程序并没有提供编程接口,也不支持命令行参数。但提供了一个命令行工具 enigmavbconsole,可以传入 Enigma Virtual Box 生成的工程文件(*.evb)路径并生成独立 EXE 文件。

而 evb 工程文件实际上是一个 XML 文件。Enigma Virtual Box 界面上如果拖入包含中文的路径,生成的 evb 会出现乱码。但实际上 evb 支持 Unicode / UTF-8 编码,如果我们用程序生成 evb 文件,并存为 UTF-8 编码,enigmavbconsole 是可以正常处理的。 但如果在 Enigma Virtual Box 界面上再次打开这个 evb 文件,界面上又乱码了。

这个 evb 的内容其实也有些复杂,但好在 aardio 写程序速度快,要不了几句代码这个 process.evb 扩展库就写好了。

来个简单的调用例子:

import console; 
import process.evb.project;
import ide;//创建封包工程
var evbProject = process.evb.project()//设置启动 EXE
evbProject.main = ide.getPublishPath();//设置要生成的独立 EXE
evbProject.output = io.tmpname(,".dat");//添加发布目录下的所有文件
evbProject.addSubFile(ide.getPublisDir());//生成工程
evbProject.generate("/app.evb");//生成独立 EXE
import process.evb;
var evb = process.evb("/app.evb")
evb.logResponse();//清理临时文件
io.remove("/app.evb"); 
fsys.move(evbProject.output,ide.getPublishPath());

既然都玩到这个份上来,再随手拖个界面吧:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/20344.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chatgpt赋能python:Python手游:如何用Python技术构建一个优秀的手游?

Python手游:如何用Python技术构建一个优秀的手游? 在当今的数字时代,游戏已经成为一种最流行的娱乐方式之一。尤其是手游,在移动设备上已经占据了巨大市场份额。通过Python编程语言,我们可以使用其强大的功能来构建出…

chatgpt赋能python:Python拦截发包实现网络安全

Python拦截发包实现网络安全 网络安全是当前社会中一个非常重要的话题,无论是企业还是个人都需要采取有效措施保护自身隐私和数据安全。在网络安全中,拦截发包是一个非常有用的技术手段。本文将介绍如何利用Python实现拦截发包,从而实现网络…

AutoCV:Python基础总结

目录 Python基础总结前言Python基础课程总结第一课:开发环境和基本数据类型第二课:控制流程和函数第三课:闭包和根号2的求解第四课:类和三大神器第五课:文件IO和pickle、json第六课:作用域、模块和包、Data…

AutoCV第一课:Python基础

目录 Python基础注意事项一、2023/3/24更新一、2023/3/25更新前言1.开发环境1.1 作业 2.变量和基本数据类型2.1 python常见数据类型2.2 作业2.3 拓展-Python格式化输出 3.算数运算和变量解包3.1 zip函数3.2 拓展-后处理代码详解 4.字符串基本使用4.1 拼接4.2 重复4.3 提取单个字…

Wireshark的抓包和分析,看这篇就够了!

点击上方蓝字 关注【程序IT圈】 WireShark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。在网络封包和流量分析领域有着十分强大功能…

全网超详细的Linux iptables命令详解以及详解iptables-save和iptables-restore命令

文章目录 1. 文章引言2. iptables的四表五链2.1 何为四表2.2 何为五链 3. iptables语法格式4. 规则的查看与清除5. 防火墙的备份与还原5.1 iptables-save命令5.2 iptables-restore命令 1. 文章引言 最近在学习Linux iptables,从而知道,它是Linux防火墙系…

chatgpt赋能python:Python拦截游戏封包:打造自己的游戏辅助工具

Python拦截游戏封包:打造自己的游戏辅助工具 随着游戏领域的不断发展,越来越多的玩家开始使用游戏辅助工具提高自己的游戏水平。而Python拦截游戏封包技术的出现,让玩家们能够更加自由地打造适合自己的游戏辅助工具,实现更高效的…

chatgpt赋能python:如何用Python炒股赚钱?

如何用Python 炒股赚钱? 在过去的几年里,随着互联网技术的飞速发展,许多人开始关注股票市场。许多股票交易者也利用数据分析和机器学习技术来辅助他们做出更好的交易决策。Python,作为一种快捷,高效,易于学…

chatgpt赋能python:如何用Python炒股

如何用Python炒股 Python是一种功能强大、易用且广泛使用的编程语言。它受到众多程序员的追捧,不仅因为它易于学习,而且因为它有许多优秀的库和工具可供使用。现在,Python不仅可以用于Web应用程序、数据科学和人工智能等领域,还可…

chatgpt赋能Python-python_ai炒股

介绍 随着人工智能技术的不断发展,越来越多的行业开始应用AI技术提升效率和准确性。其中,炒股领域是一个非常典型的案例。而Python则成为了广泛被应用于AI炒股的主流语言之一。本文将介绍Python在AI炒股方面的应用以及相关的技术和策略。 什么是AI炒股…

chatgpt赋能python:Python用于炒股

Python用于炒股 随着互联网和数据科学的发展,越来越多的投资者开始依靠计算机和数据科学来进行更高效的投资。Python是一种广泛使用的编程语言,可以帮助投资者更好地处理数据和自动化交易。本文将简要介绍Python如何用于炒股,并分享一些有用…

chatGPT代替了我的工作,却让他加薪了50%

前言 最近ChatGPT这个技术发展,着实有点让人眼花缭乱,所以,搞来了一份表格,帮你理清它的发展思路。 简单来说,ChatGPT是一种全新聊天机器人模型,也可以称之为“生成型AI”。 点击免费领取: CS…

ChatGPT代替了人类思考,学习还有什么用?

ChatGPT是由OpenAI在2022年11月30日发布的聊天机器人。如果你认为它只是另一个 Siri、小度,你就大大低估了这个产品的革命性威力。 这个产品的本质, 不是语音机器人,而是代替人类思考 。 过去你想知道什么,会用谷歌、百度搜索&…

Midjourney|文心一格prompt教程[进阶篇]:Midjourney Prompt 高级参数、各版本差异、官方提供常见问题

Midjourney|文心一格prompt教程[进阶篇]:Midjourney Prompt 高级参数、各版本差异、官方提供常见问题 1.Midjourney Prompt 高级参数 Quality 图片质量是另一个我比较常用的属性,首先需要注意这个参数并不影响分辨率,并不改变分辨率&#x…

我的同事把AI带进公司,让它写代码、写稿、画图……

字节跳动的同学,真的超级爱研究新技术。 一有什么新技术出现,大家就纷纷去探索、组团实践。 拿最近热门的 AIGC 来说,不管是业务需求,还是私下探索,不少人都把这些能写会画的 AI 引进了公司。 这下可是造福了字节同…

保姆级教程:手把手教你拿下雅思写作7分

在留学路上,雅思考试是绕不开的一道坎。然而,众所周知,雅思学习热度高,学习难度大,而且很多人找不到合适的学习方法。在这里,我们以雅思写作中的大作文为例,从大作文的结构拆解、学习的任务拆分…

Prompt learning 教学[最终篇]:Chatgpt使用场景推荐、优秀学习资料推荐、AI工具推荐

Prompt learning 教学[最终篇]:Chatgpt使用场景推荐、优秀学习资料推荐、AI工具推荐 1.chatgpt使用场景推荐 各位应该在各种平台看到不少可以尝试使用的场景,我这里仅收录: 有意思的场景:一般比较垂直或者小众,或者出…

我采访了 GPT-4:与人类相比,我并没有实际的语言运用和交际经验

iBrand 编辑组今天跟 GPT-4 聊了会儿天,虽然它回复的内容数据源还停止在 2021 年,但不影响他已经在质上成长了。 🤔 那要什么时候才能做到实时更新呢? 会不会再过一年,chatGPT 数据源的大部分内容,都变成了…

常用问题网址

https://www.leonelngande.com/fetching-the-current-route-fragment-in-angular-7/RxJS https://github.com/manojjha86/complete-angular-13-course Color Scheme Designer,在线配色器-在线色彩搭配和色彩配色方案 Zeal - Offline Documentation Browser https://platfor…

OpenAI Translator - ChatGPT API 划词翻译工具的下载安装使用教程

OpenAI Translator 浏览器插件 OpenAI Translator插件 使用 ChatGPT API 在 macOS 上进行全局划词翻译, 但是由于很多用户并不是 macOS 用户,所以特此开发了一个浏览器插件方便非 macOS 用户使用 ChatGPT 进行划词翻译。 OpenAI Translator 是一款浏览…