使用 RunPy 导入外部库
ToolJet 允许您通过使用 RunPy 查询 导入它们来在您的应用程序中使用 python 包。 在本操作指南中,我们将导入一些包并在应用程序中使用它。
:::注意不支持的模块 Pyodide 当前不支持的模块是那些具有依赖于系统库的 C 或 C++ 扩展的模块。这些模块不能在 Pyodide 中使用,因为它在 Web 浏览器中运行,无法访问 C 或 C++ 扩展所依赖的底层系统库。此外,Pyodide 使用已编译为 WebAssembly 的 Python 版本,它不支持与常规版本的 Python 相同的系统调用。因此,任何需要访问系统库或系统调用的模块都无法在 Pyodide 中运行。 :::
创建一个新的应用程序,然后从查询面板创建一个新的 RunPy 查询。

让我们编写一些代码来导入包。我们将首先导入 micropip,它是 Python 的软件包安装程序,然后我们将使用 micropip 安装
Pandas和NumPy。 运行 查询以安装包。import micropip
await micropip.install('pandas')
await micropip.install('numpy')
提示
启用 Run this query on application load? 选项以使包在整个应用程序中可用。
例子
使用 NumPy 的随机数数组
让我们创建一个 RunPy 查询,它将使用 NumPy 包中的 random 模块,查询将生成随机数数组。
from numpy import random
x = random.binomial(n=10, p=0.5, size=10)
print(x)
信息
您可以在浏览器的控制台上检查输出。
解析 CSV 数据使用
让我们创建一个 RunPy 查询,它将解析 csv 文件中的数据。在此查询中,我们将使用
StringIO、csv和Pandas模块。from io import StringIO
import csv
import pandas as pd
scsv = components.filepicker1.file[0].content
f = StringIO(scsv)
reader = csv.reader(f, delimiter=',')
df = pd.DataFrame(reader)
print(df.info())
print(df)
在画布上添加一个文件选择器组件,并将On file loaded事件的事件处理程序设置为我们为解析数据而创建的Run Query。

最后,让我们在文件选择器上加载一个 csv 文件,并通过浏览器控制台上的 RunPy 查询检查输出。
