当前位置: 首页 > 科技观察

现在浏览器可以运行Python代码,Python可能会成为一门前后端兼顾的语言

时间:2023-03-18 19:11:45 科技观察

嗨,我是郑哥。作为一名Python程序员,我很羡慕那些可以写出令人惊叹的Amazing网页的Javascript开发者。但是今年,我们也可以用Python来写前端了:Anaconda团队开发了PyScript,你可以在HTML中编写并运行Python代码,调用Javascript库。换句话说,你可以使用Python进行整个前后端开发。什么是PyScriptPyScript[1]是由Anaconda团队开发的Javascipt库,可以在HTML标签中嵌入Python代码,无需服务器即可运行Python代码。比如我们用Python在页面上显示日期,先写一个hello_world.html文件,内容如下:用浏览器打开,运行效果是这样的:就是说我们可以编写运行在HTML中编写Python代码,在PyScript中调用Javascript库,并在Python中进行所有Web开发。PyScript的工作原理PyScript目前构建在Pyodide之上,Pyodide是CPython到WebAssembly/Emscripten的一个端口。PyScript支持在浏览器中编写和运行Python代码,未来会提供对其他语言的支持。你可能想知道,什么是WebAssembly?以下内容来自维基百科:WebAssembly(简称wasm)是浏览器内部客户端的一种实验性低级编程语言。WebAssembly是一种可移植的抽象语法树,旨在提供比JavaScript更快的编译和执行。WebAssembly允许开发者使用他们熟悉的编程语言(最初以C/C++为目标)进行编译,然后使用虚拟机引擎在浏览器中执行。WebAssembly的开发团队分别来自Mozilla、Google、Microsoft和Apple,代表了四大网络浏览器Firefox、Chrome、MicrosoftEdge和Safari。2017年11月,以上四款浏览器开始实验性支持WebAssembly。WebAssembly于2019年12月5日成为万维网联盟(W3C)的推荐标准,与HTML、CSS和JavaScript一起成为第四大网络语言。PyScript的便利性PyScript将Python带给了更多的前端开发人员。编程门槛低。因为几乎每个人都可以访问网络浏览器,无论是在计算机上还是在手机上。这意味着无需安装任何额外的软件即可开始编程。使用PyScript,无需再担心部署问题。PyScript提供了一种“超越云的架构转变”,一切都发生在网络浏览器中。如何使用PyScriptPyScript使用三个主要组件在html中编写Python:py-env定义运行Python代码所需的包。py-script是您在网页中编写Python代码的地方。py-repl创建一个REPL(读取-评估-打印循环)组件,用于评估用户输入的代码并显示结果。比如代码中的两个标签todo.html[2]:执行效果:我们来看一个repl[3]的例子:执行效果:更多示例请访问这里[4]。如何运行这些演示?gitclonehttps://github.com/pyscript/pyscript.gitcdpyscriptnpminstallnpmrundev然后用浏览器访问http://localhost:8080,你会看到这个界面:PyScript的未来PyScript会把Python带到浏览器,我觉得还是很有价值的,对这项技术革新充满了期待。目前,GitHub上有2700颗星。如果你也有兴趣,不妨拿来做个网站。