单击按钮时如何调用 python 脚本(使用 pyscript)

How do I call a python script when clicking a button (using pyscript)

我想在单击按钮(在 html 文件上)时在浏览器上 运行 一个 Python 脚本。 接近这个的东西:

<!DOCTYPE html>
<html>

<head>
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
</py-env>
</head>

<body>

<button type="button" onclick="runPython()">run Python</button>

<script>
function runPython() { 

<py-script>
print("you clicked me")
</py-script>

}
</script>

</body>
</html>

要从 JavaScript 调用 Python 代码需要创建一个 代理 。此代理处理与 JavaScript.

之间的类型(数据)转换

创建代理:

from js import document 
from pyodide import create_proxy

function_proxy = create_proxy(runPython)

更改您的 HTML 元素声明以声明 ID 并删除 onClick:

<button type="button" id="button">run Python</button>

将代理分配给按钮的事件侦听器:

e = document.getElementById("button")
e.addEventListener("click", function_proxy)

这种风格与 JavaScript 分配事件侦听器的方式非常相似。

放在一起:

<body>

<button type="button" id="button">run Python</button>

<py-script>
from js import document 
from pyodide import create_proxy

def runPython():
    print("you clicked me")

function_proxy = create_proxy(runPython)

document.getElementById("button").addEventListener("click", function_proxy)
</py-script>

</body>

我在 JavaScript 和 Python 上写了几篇文章: