2026/1/15 9:56:23
网站建设
项目流程
网站建设数据表设计 性别,用电脑做服务器搭建php网站,二环建设部网站,资源在线资源库Python Web 框架的使用率仍然是 Flask、Django 和 FastAPI 之间的三强之争。所有其他框架加起来只能勉强排在第三位。下面对这三个主流框架做下比较#xff1a;
Djanggo 使用比率#xff1a; 39%系统特点#xff1a;全栈框架#xff1a;内置 ORM、模板引擎、表单处理、用户…Python Web 框架的使用率仍然是 Flask、Django 和 FastAPI 之间的三强之争。所有其他框架加起来只能勉强排在第三位。下面对这三个主流框架做下比较Djanggo使用比率 39%系统特点全栈框架内置 ORM、模板引擎、表单处理、用户认证等功能开箱即用适合快速开发复杂的 Web 应用社区强大有丰富的第三方库和插件。系统性能中等。由于功能丰富性能略低于轻量级框架但足够应对大多数场景。适用场景需要快速开发的全栈应用如内容管理系统CMS、社交网络、电子商务网站等。Flask使用比率36%系统特点微框架轻量级核心功能简单易于扩展灵活可以根据需求选择插件和库学习曲线低适合初学者和小型项目。系统性能较高由于轻量级设计性能优于 Django。适用场景小型 Web 应用、API 服务、原型开发。FastAPI使用比率25%系统特点高性能基于 Starlette 和 Pydantic性能接近 Node.js 和 Go异步支持原生支持异步编程自动文档自动生成 OpenAPI 和 Swagger 文档。系统性能极高是目前性能最好的 Python Web 框架之一。适用场景高性能 API 服务、微服务、实时应用。目前纯粹的前端框架有很多如vue、angular、React等笔者不建议使用Python做web界面开发可以使用Python开发人工智能后端后通过restful API发布接口供第三方应用调用即可。下面逐个介绍这几个框架并提供简单的web开发应用只做抛砖引玉的作用不做详细的引申感兴趣的同学可以针对自己感兴趣的框架做进一步的学习。最后我们来了解FastAPI。在现代 Web 开发中API 是前后端分离架构的核心。FastAPI 凭借其高性能、简洁的语法和自动文档生成功能成为 Python 开发者的首选框架。FastAPI是一个用于构建API的现代、快速高性能的web框架使用Python 3.8并基于标准的Python类型提示。核心特点基于 Starlette 和 Pydantic提供异步支持和严格的数据验证。自动生成 API 文档内置 Swagger UI 和 ReDoc开发者无需手动维护文档。类型提示Type Hints利用 Python 的类型系统实现输入参数验证和代码提示。高效编码提高功能开发速度约 200 至 300。更少 bug减少约 40 的人为开发者导致错误。智能极佳的编辑器支持。处处皆可自动补全减少调试时间。简单设计的易于使用和学习阅读文档的时间更短。简短使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。健壮生产可用级别的代码。还有自动生成的交互式文档。标准化基于并完全兼容API 的相关开放标准OpenAPI (以前被称为Swagger) 和 JSON Schema。技术优势特性说明高性能异步处理能力ASGI支持高并发性能媲美 Node.js 和 Go。开发效率高通过类型提示和自动文档生成减少代码冗余和调试时间。生态完善可无缝集成 SQLAlchemy、OAuth2、JWT 等常用库。依赖安装主意fastapi有版本要求需要的Python版本至少是Python 3.8安装fastapi# 使用pip安装 pip install fastapi安装ASGI服务器ASGI是异步网关协议接口一个介于网络协议服务和Python应用之间的标准接口能够处理多种通用的协议类型包括HTTPHTTP2和WebSocket。pip install uvicorn[standard]Uvicorn是一个基于ASGIAsynchronous Server Gateway Interface的异步Web服务器用于运行异步Python web应用程序。它是由编写FastAPI框架的开发者设计的旨在提供高性能和低延迟的Web服务;开发第一个应用首先使用Python包管理工具如proptry或者uv创建一个新的工程python-demo。第一个文件在新建的工程目录下新建一个python文件main.py。如果创建工程时已经生成则打开即可。# main.py from fastapi import FastAPI app FastAPI() app.get(/) async def root(): return {message: Hello World}启动服务# 在Terminal中输入 # 语法uvicorn 文件的相对路径实例名 --reload # reload表示热启动后端代码改变时前端页面也会随之改变 PS:uvicorn main:app --reload INFO: Will watch for changes in these directories: [E:\\test\\project\\fastapi] INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRLC to quit) INFO: Started reloader process [19856] using statreload INFO: Started server process [7500] INFO: Waiting for application startup. INFO: Application startup complete.启动成功后打开浏览器输入http://127.0.0.1:8000/即可看到输入的信息{message: Hello World}