HTML 中可以嵌入 Python 代码吗?

什么?可以在 HTML 中直接插入 Python 代码?

PyScript 由来自 Anaconda 的团队开发,是一个用于在 HTML 中插入 Python 代码的工具,这意味着你可以在 HTML 中编写和运行 Python 代码,在 PyScript 中调用 Javascript 库,并在 Python 中进行所有的 Web 开发,是不是很神奇!

什么?可以在 HTML 中直接插入 Python 代码?

有了 PyScript,我们现在可以在 HTML 中编写 Python 代码并构建 Web 应用了,PyScript 可以让更多的前端开发者接触到 Python 的强大功能。有了 PyScript,我们不再需要担心部署问题,因为一切都将在你的浏览器中执行,比如作为数据科学家,你可以在一个 html 文件中分享模型,只要其他人在浏览器中打开该文件,就会运行代码了。

什么?可以在 HTML 中直接插入 Python 代码?

PyScript 是基于 Pyodide(https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712pyodide.orghttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712) 开发的,它是 CPython 到 WebAssemblyhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712Emscripten 的入口,PyScript 支持在浏览器中编写和运行 Python 代码,未来还将提供对其他语言的支持。

什么?可以在 HTML 中直接插入 Python 代码?

什么是 WebAssembly?

使得用 Python 编写网站成为可能的基础技术是 WebAssembly。最初开发 WebAssembly 时,Web 浏览器仅支持 Javascript。WebAssembly 于 2017 年首次发布,到 2019 年迅速成为了 W3C 的官方标准,它包括一种人类可读的 .wat 文本格式语言,然后将其转换为浏览器可以运行的二进制 .wasm 格式,这就使得我们可以用任何语言编写代码,将其编译为 WebAssembly,然后在网络浏览器中运行。

如何使用 PyScript?

PyScript 的 alpha 版本可以在 pyscript.net 上找到,代码可在 https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712github.comhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712pyscript 获得。PyScript 允许你使用以下三个主要组件在 html 中编写 Python:定义了运行 Python 代码所需的 Python 包。是你编写在网页中执行的 Python 代码的地方。创建一个 REPL 组件,用于评估用户输入的代码并显示结果。

我们先创建一个最简单的示例,代码如下所示:

PyScript Hello WorldHello world! <br>This is the current date and time, as computed by Python:from datetime import datetimenow = datetime.now()now.strftime("%mhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712%dhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712%Y, %H:%M:%S")<p>只需要这页面上显示当前时间即可,在浏览器中打开后就可以看到结果了,如下所示:<p style="text-align: center"><noscript><img decoding="async" src="https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712img.php.cnhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712uploadhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712articlehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712000https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712465https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712014https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712168233119092064.png" alt="什么?可以在 HTML 中直接插入 Python 代码?"></noscript><img decoding="async" class="j-lazy" src="https://www.chuangxiangniao.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712img.php.cnhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712uploadhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712articlehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712000https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712465https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712014https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712168233119092064.png" alt="什么?可以在 HTML 中直接插入 Python 代码?"><p>又比如我们创建一个具有流式数据的 Panel 仪表盘,代码如下所示,先通过 引入需要的包,然后在 中编写 Python 代码,如果你不喜欢直接在下编写 Python 代码,也可以使用 Python 文件作为源代码,例如。<pre class="brush:typescript;toolbar:false;"><title>PyScripthttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712Panel Streaming DemoBokeh.set_log_level("info");- bokeh- numpy- pandas- panel<nav style="background-color: #000000"><button type="button"> <span>   <a href="https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712"> <noscript><img decoding="async" src="https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712img.php.cnhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712uploadhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712articlehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712000https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712465https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712014https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712168233119095196.png" alt="什么?可以在 HTML 中直接插入 Python 代码?"></noscript><img decoding="async" class="j-lazy" src="https://www.chuangxiangniao.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712img.php.cnhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712uploadhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712articlehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712000https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712465https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712014https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712168233119095196.png" alt="什么?可以在 HTML 中直接插入 Python 代码?">  <a href="" style="color: #f0ab3c">Panel Streaming Demo import asyncioimport panel as pnimport numpy as npimport pandas as pdfrom bokeh.models import ColumnDataSourcefrom bokeh.plotting import figurefrom panel.io.pyodide import showdf = pd.DataFrame(np.random.randn(10, 4), columns=list('ABCD')).cumsum()rollover = pn.widgets.IntInput(name='Rollover', value=15)follow = pn.widgets.Checkbox(name='Follow', value=True, align='end')tabulator = pn.widgets.Tabulator(df, height=450, width=400)def color_negative_red(val):"""Takes a scalar and returns a string withthe css property `'color: red'` for negativestrings, black otherwise."""color = 'red' if val < 0 else 'green'return 'color: %s' % colortabulator.style.applymap(color_negative_red)p = figure(height=450, width=600)cds = ColumnDataSource(data=ColumnDataSource.from_df(df))p.line('index', 'A', source=cds, line_color='red')p.line('index', 'B', source=cds, line_color='green')p.line('index', 'C', source=cds, line_color='blue')p.line('index', 'D', source=cds, line_color='purple')def stream():data = df.iloc[-1] + np.random.randn(4)tabulator.stream(data, rollover=rollover.value, follow=follow.value)value = {k: [v] for k, v in tabulator.value.iloc[-1].to_dict().items()}value['index'] = [tabulator.value.index[-1]]cds.stream(value)cb = pn.state.add_periodic_callback(stream, 200)controls = pn.Row(cb.param.period, rollover, follow, width=400)await show(controls, 'controls')await show(tabulator, 'table')await show(p, 'plot')<p>上面的代码在浏览器中打开后就可以直接显示对应的效果了:<p style="text-align: center"><noscript><img decoding="async" src="https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712img.php.cnhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712uploadhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712articlehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712000https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712465https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712014https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712168233119361962.gif" alt="什么?可以在 HTML 中直接插入 Python 代码?"></noscript><img decoding="async" class="j-lazy" src="https://www.chuangxiangniao.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712img.php.cnhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712uploadhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712articlehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712000https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712465https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712014https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712168233119361962.gif" alt="什么?可以在 HTML 中直接插入 Python 代码?"><p>关于 PyScript 的更多使用方法可以查看 Git 仓库示例 https:https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712https://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712github.comhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712pyscripthttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712pyscripthttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712treehttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712mainhttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712pyscriptjshttps://www.php.cn/link/29a9f8c8460e5e2be4edde557fd83712examples 了解更多。

登录后复制

以上就是HTML 中可以嵌入 Python 代码吗?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2239136.html

(0)
上一篇 2025年2月26日 19:41:18
下一篇 2025年2月26日 19:41:47

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • html、css容易被忽略的小知识点_html/css_WEB-ITnose

    都说前端容易,谁说的。前端上手快,越往后学习越困难。学习前端快一年了,依然发现一些小的知识点不会。这些经验性的东西不碰到永远学不会。 (1)title前面的logo。 就像这个编辑文章前面的logo。不知道大家知不知道这个图标是如何加载过来…

    编程技术 2025年4月4日
    100
  • html节点属性操作

    nbsp;html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> …

    编程技术 2025年4月4日
    100
  • html教程:用tabIndex轻松实现网页导航

    最近,当我在一个网站上输入表格数据时,我填写了一栏,并点击[tab]键移到下一栏;当我抬头时,我惊奇的发现光标跳到页面下方的另一栏中。我用鼠标将光标移到正确的文本栏中,但不久[tab]键又再次出现问题。这一情形使我想了解一下页面设计,以及t…

    编程技术 2025年4月4日
    100
  • html教程:WEB标准从头开始_DOCTYPE声明

    在较早之前的网页上,我们经常可以看到如下的网页结构代码: 这是一个网页 …… 立即学习“前端免费学习笔记(深入)”; …… 立即学习“前端免费学习笔记(深入)”; 很显然的,这种结构的网页代码是不符合Web标准规范的,但是浏览器仍然可以很好…

    编程技术 2025年4月4日
    100
  • 一步步学习html—-第一课

    在讲授第一课的时候,首先要给大家表明的一个概念是:我们学习的是一门语言,而不是一个编译工具,所以我们要习惯在编写程序的时候忽略编译工具的概念,因为只有忽略了编译工具,才能真正意义上的明白一门语言的精髓在哪里,也才能真正掌握一门语言到底是怎么…

    编程技术 2025年4月4日
    100
  • 一步步学习html—-第三课

    经过前面两课的学习,不知道你们对于什么是html有没有了一定程度上的了解,今天的第三课算是第一阶段的一个总结,会加入一点新的内容,但是更多的是会做总结,好了,废话不说了,进入今天的课程吧!在前两课的基础上,这一课主要是加入了一个插入图片的问…

    编程技术 2025年4月4日
    100
  • 一步步学习html—-第四课

    这一课我们主要讲解一下链接的问题:这个也可以定义为超文本链接,标签则是这个标签的全称是anchor,中文意思是锚;例子:http://www.baidu.com”>click!在网页上就会出现一个链接,其文本表现形式就是正…

    编程技术 2025年4月4日
    100
  • HTML的分段与换行代码说明

    在网页的排版中,经常会对文本进行分段和换行的操作,这两种操作由 标签 和标签来实现。 1、 -段落标签 p是英文单词“paragraph”的首字母,用来定义网页中的一段文本, 一般是成对出现。 2、-换行标签 br是英文单词“break”的…

    编程技术 2025年4月4日
    100
  • HTML的标题设置代码

    在word文档中,标题往往都需要格外醒目,例如加粗字体较大等。同样地在html文档中也可以设置标题以同样的格式显示。 我们可以用html标题标签来设置标题,一共有6个标题标签,从 到 ,数字越小,级别越高,文字也相应越大。 下面通过实例介绍…

    编程技术 2025年4月4日
    100
  • HTML的列表代码说明

    在编辑文档时,有时希望某些内容以列表形式显示出来,是其结构化和条理化。在html文档中,html列表标签主要分为序号列表和项目列表,前者是每个列表项都有个数字编号,后者则在每个列表项前有个圆点符号。 1、序号列表(也称为有序列表) 序号列表…

    编程技术 2025年4月4日
    100

发表回复

登录后才能评论