前言

这里是2025年的天影大侠,这不知道从哪找的个东西,都忘了自己弄过这个。

问候

大家好

发文章的时候总是只能发代码,不能运行

现在发现了一个东西,可以在你的文章中直接运行python

它就是pyscript,来看看吧

[官方文档](PyScript — PyScript documentation)在这<–


Pyscript

第一步

想要在你的文章中运行python代码,请先在前引入pyscript的css和js

1
2
<link rel="stylesheet" href="https://pyscript.net/latest/pyscript.css" />
<script defer src="https://pyscript.net/latest/pyscript.js"></script>

第二步

在你的文章body里添加,并在标签前插入你的python代码

比如

1
2
3
<py-script>
print('Hello World!')
</py-script>

当然,也可以先在style标签前修改一下pyscript输出的样式,这里随便改一下

1
2
3
4
5
6
7
8
9
<style>
py-script {
width: 100%;
height: 100%;
font-size: 20px;
text-align: center;
position: absolute;
}
</style>

运行结果如下;

运行hello world

第三步

运行是没有问题,但每次打开网页时都要加载一段时间来下载pyodide

下载pyodide中

下载太慢了,毕竟没人想进入一个网页还得加载好半天吧

根据文档,在body里引入以下代码:

1
2
3
4
5
6
<py-config>
[[interpreters]]
src = "XXX"
name = "pyodide-0.23.4"
lang = "python"
</py-config>

可以把src切换为国内的https://libs.cdnjs.net/pyodide/0.23.4/pyodide.min.js

不行的话也可以自己部署pyodide

之后你就可以在标签前写上自己的python代码来运行了

其它

这只是最基本的print用法,你也可以在标签前引入其他python包,此标签应放在标签前,如

1
2
3
4
<py-env>
- numpy
- matplotlib
</py-env>

即引入了numpy和matplotlib

也可以直接引入.whl,如

1
2
3
<py-env>
- 'http://xxx.com/xxx.whl'
</py-env>

那要怎么放在文章里呢?

其实可以直接把html写在文章的index.md里,它在网页上会正常显示的

废话

这个pyscript自己用起来觉得还是不如js

毕竟加载的太慢了,要下载Pyodide的文件

更多更详细的教程还请移步[官方文档](PyScript — PyScript documentation)