aardio 文档

aardio 范例: process.python - 入门

//入门
import win.ui;
/*DSG{{*/
var winform = win.form(text="process.python - 入门";right=759;bottom=469)
winform.add(
edit={cls="edit";left=16;top=22;right=722;bottom=420;edge=1;multiline=1;z=1}
)
/*}}*/

import process.python; 
/*
如果指定 process.python.path = "python.exe" 
则调用系统安装的 Python,没安装会自动下载安装,
否则调用绿色嵌入版 Python ,没下载也会自动下载。
*/ 

/*
执行 Python 代码,支持任意版本 python ( 支持 64位 Python )。
调用 32 / 64 位 python.exe 都可以在发布 aardio 程序时打包为独立 EXE 文件。

参数也可以是(*.py, *.aardio 文件路径,支持内存加载资源文件)
如果 Python 代码开始为 aardio 模板标记,则启用模板语法: 
https://www.aardio.com/zh-cn/doc/language-reference/templating/syntax
*/
var python = process.python.exec(`
?>import json
str = json.dumps(['foo', "<?= 
time() //可使用模板语法嵌入 aardio  代码
?>",{'bar': ('baz', None, 1.0, 2)}])

# print 写到进程标准输出,在 aardio 中可以读取
print( str )
`);

/*
这里的 python 对象就是进程管道( process.popen )对象。 
下面的 python.json 读取进程输出的下一行 JSON 并转换为 aardio 对象,忽略非 JSON 输出。
读取其他数据可以改为 readAll() 或 read() 函数。
*/
var info,err = python.json();

winform.edit.print(info || err);

winform.show();
win.loopMessage();

Markdown 格式