12 个理由告诉你为什么 Python 比 HTML+JS 更适合做前端 Web 开发

2025-06-07

使用 Python 而不是 JS 进行前端 Web 开发的 12 个理由

为什么 Python 在 Web 开发方面胜过 HTML+JS

为什么 Python 在 Web 开发方面胜过 HTML+JS

Web 开发相当繁琐。你需要掌握 JS HTML CSS Python(或者 Rails 或 Node)以及大量的框架

我们热爱 Python,因为它的座右铭是:简单胜过复杂那么,如果 Web 开发完全使用 Python,甚至包括前端,会是什么样子呢?我们构建了它,它叫做Anvil

以下是使用 Python 构建前端后端如此出色的 12 个理由:


1. 您的 UI 组件都是 Python 对象。

在浏览器中运行 Python意味着您可以使用 Python 修改 UI 组件。将它们拖放到页面上以构建用户界面,然后设置它们的属性并通过 Python 代码调用它们的事件。


构建反馈表单的 UI。查看教程


2. 从浏览器调用服务器端函数

在传统的 Web 开发中,从浏览器调用 Web 服务器非常麻烦。你必须设置 URL 路由,将所有数据压缩成 JSON,设置 AJAX 请求,然后异步获取响应……真是繁琐的工作!

使用 Anvil,你只需调用一个函数。为任何函数 添加一个装饰器,然后从浏览器代码中调用该函数即可。传递 Python 对象作为参数;返回 Python 对象。大功告成。


3. 数据库内置

设置和维护数据库非常麻烦。所以 Anvil 内置了一个数据库。你可以用图形方式设计数据表,然后用 Python 查询或更新行。(你能将惰性分页查询响应以 Python 对象的形式返回给浏览器吗?当然可以!在大多数 Web 框架中,这需要几十行代码。)


Anvil 中的数据表


4. 连接任意位置运行的代码

Anvil 是“无服务器”的——你的代码会自动托管在云端。但是,如果你想在电脑上运行代码怎么办?只需使用Uplink即可!

有 Jupyter Notebook 吗? 那就从 Web 调用它吧
有本地数据库吗? 那就写个本地脚本查询,然后从 Web 调用它吧!


将 Google Colab 笔记本连接到 Web 应用


5.二进制数据更易于处理

“上传文件”是基本功能。所以它在每个 Web 框架中都应该很简单。对吧?惊喜!在传统的 JS 应用中,处理二进制数据(例如文件、图片或 PDF)非常困难。(如果你觉得刻薄,可以试试enctype="multipart/form-data"跟经验丰富的 Web 开发者说“ ”。看他们瑟瑟发抖的样子。)

但 Anvil 让这一切变得简单。所有二进制数据(图片、上传的文件等)都表示为Python 对象!你可以将二进制数据作为参数传递给服务器函数。你可以将其存储在数据表中。你可以将其与 Anvil 组件一起使用。例如,渲染和下载 PDF就是这么简单:

# In a server module:
@anvil.server.callable
def get_pdf():
  return anvil.pdf.render_form('Form1')
Enter fullscreen mode Exit fullscreen mode
# In the browser:
pdf = anvil.server.call('get_pdf')
download(pdf)
Enter fullscreen mode Exit fullscreen mode

6. 内置用户身份验证

建立用户身份验证机制虽然繁琐,但如果出错,后果不堪设想! OWASP漏洞中,有一半都与“身份验证错误”有关。

Anvil 内置的用户服务开箱即用,可为您处理注册、登录和用户权限。只需一行 Python 代码即可向用户呈现带有邮箱验证的注册表单——只需调用 即可anvil.users.login_with_form()

除了电子邮件登录外,Anvil 还支持GoogleMicrosoftFacebookSAML SSO。(双因素身份验证怎么样?当然可以。


7. 内置电子邮件支持

一行代码即可发送邮件。一行代码即可接收邮件!这一切都内置于 Anvil 的电子邮件服务中。

构建一个接收电子邮件的应用程序非常简单,我们在一个4 分钟的视频中完成了它:


8.内置PDF 生成功能

有人说“包含电池”吗?使用我们的拖放编辑器创建 PDF 文档,然后通过 Python 调用进行渲染和下载。


9. 使用你最喜欢的 Python 包

Python 的一大优势在于其丰富的可用软件包。借助完整的 Python 运行时,您可以访问一系列常用的 Python 库来构建 Web 应用。


10. 你仍然可以构建 HTTP API

想要构建一个 HTTP API,以便非 Anvil 应用也能与您的服务交互吗?创建 HTTP 端点几乎创建可从浏览器调用的函数一样简单。查看本教程

或者只是观看 Bridget 在 20 秒内构建和部署 JSON API:


在 20 秒内创建并部署可用的 JSON API。


11. 一键集成

您的 Anvil 应用可以轻松连接到 Google、Microsoft、Facebook、Stripe 等服务。您可以使用 Google、Microsoft 和 Facebook 的单点登录功能登录您的用户,使用 Stripe收款,或显示交互式Google 地图

Google 地图,集成到 Python Web 应用程序中


12.轻松加密存储

您肯定不想将密码遗留在源代码中。App Secrets服务提供易于使用的敏感数据(例如密码或加密密钥)加密存储。

通过另一个4 分钟教程学习如何存储加密数据


简化。保持力量。

Anvil 为您提供 Python 的所有功能,同时又避免了传统 Web 框架的复杂性。如果您是 Python 开发人员,则无需任何其他工具即可构建全栈 Web 应用。

如果您确实想使用 HTML、CSS 或 JavaScript 进行一些调整,总有一个解决方案!使用Python 代码中的Javascript 库,或使用 HTML CSS 为您的应用设计样式

不要被锁在里面。

Anvil 的运行时是开源的,因此您可以将应用程序部署到任何地方。您甚至不需要我们的编辑器来创建 Anvil 应用程序!


开始构建

Anvil 完全免费,您可以立即开始构建!您可以先阅读教程来熟悉 Anvil,或者查看文档来了解 Anvil 的其他功能。

试用 Anvil >>

文章来源:https://dev.to/meredydd/12-reasons-to-use-python-not-js-for-front-end-web-development-b4a
PREV
50天50个项目,已完成3/5!🌻
NEXT
原生 Web 组件开发