FastAPI入门:Python后端开发新手指南

代码里的风
2025-06-12 08:44
阅读 379

本文适合从未接触过后端开发的Python初学者阅读。我们将从最基础的知识讲起,通过简单易懂的语言和代码示例,带你走进FastAPI的世界。


一、开篇:什么是FastAPI?它能做什么?

一、开篇:什么是FastAPI?它能做什么?

FastAPI 是一个用于构建 Web 应用程序(主要是后端服务)的 Python 框架

你可以把它理解为一个“工具箱”,它可以帮助你:

  • 创建网站的“接口”(称为 API)
  • 接收用户发送的数据(比如注册信息)
  • 给用户提供数据(比如查询商品列表)

举个简单的例子:你在购物 App 上点击“搜索”按钮时,App 并不会自己计算出结果,而是向服务器请求数据。这个服务器背后可能就运行着一个 FastAPI 编写的程序在处理请求!

📌 FastAPI 的特点:

  • 快速:性能堪比 Go 和 Node.js
  • 易读:使用现代 Python(3.8+)语法
  • 自动生成文档:内置 Swagger 和 ReDoc 接口文档
  • 支持异步编程(async/await)

二、环境准备:安装 FastAPI 开发环境

二、环境准备:安装 FastAPI 开发环境

我们要完成以下几步来搭建开发环境:

✅ 第一步:安装 Python

确保你的电脑已经安装了 Python 3.8 及以上版本。

在终端中输入:

python --version

如果你没有 Python 或版本低于 3.8,请先去 官网下载安装


✅ 第二步:创建项目文件夹

随便找个位置新建一个文件夹,比如叫做 fastapi-tutorial

进入该文件夹并创建一个虚拟环境(隔离项目依赖):

cd fastapi-tutorial
python -m venv venv

激活虚拟环境:

  • Windows:
    venv\Scripts\activate
    
  • macOS / Linux:
    source venv/bin/activate
    

✅ 第三步:安装 FastAPI 和 Uvicorn

我们使用 pip 安装所需的包:

pip install fastapi uvicorn

✅ 到此为止,你的开发环境就已经准备好了!


三、核心概念讲解(通俗语言 + 示例)

🔹 1. 什么是“API”?

API(Application Programming Interface)就是一种约定好的“接口”,前端或其他系统可以通过这些接口访问你的程序功能。

举个例子:你想写一个接口让用户可以通过网址获取一条问候语。

🔹 2. “路由”是什么?

路由是定义访问路径的方式,比如:

  • /hello 路径返回一句问候
  • /users 路径返回用户列表

🔹 3. HTTP 方法有哪些?

  • GET: 获取资源(如获取一篇文章)
  • POST: 提交数据(如注册账号)
  • PUT: 更新数据
  • DELETE: 删除数据

四、实战项目:创建第一个 FastAPI 项目

我们来做一个非常简单的项目:实现两个接口,分别输出一句话和一个数字列表。

🧩 步骤1:创建项目主文件 main.py

在这个文件中写下以下内容:

from fastapi import FastAPI

# 创建应用实例
app = FastAPI()

# 定义第一个接口:GET /hello
@app.get("/hello")
def say_hello():
    return {"message": "Hello, FastAPI!"}

# 定义第二个接口:GET /numbers
@app.get("/numbers")
def get_numbers():
    return {"data": [1, 2, 3, 4, 5]}

这段代码做了什么?

  • 使用 @app.get() 声明了两个 URL 地址对应的函数
  • 当用户访问 /hello,返回一个 JSON 数据 { "message": "Hello, FastAPI!" }

🧩 步骤2:启动服务器

在命令行中执行以下命令来启动服务:

uvicorn main:app --reload

解释一下参数:

  • main: 是你的 Python 文件名(不带 .py)
  • app: 是你在 main.py 中定义的应用实例名称
  • --reload: 启动热重载模式,修改代码后自动重启

默认运行在本地地址:http://127.0.0.1:8000


🧩 步骤3:测试接口

浏览器访问:

  • http://127.0.0.1:8000/hello
  • http://127.0.0.1:8000/numbers

你应该看到类似这样的 JSON 输出。


🧩 步骤4:查看自动生成的文档

FastAPI 最棒的功能之一就是可以自动生成 API 文档

打开浏览器访问:

你可以直接用它们对 API 进行测试,不需要 Postman!


五、常见问题解答(FAQ)

❓1. 运行时报错:“command not found: uvicorn”

确认是否已经成功安装了 uvicornfastapi,执行下面命令:

pip show fastapi uvicorn

如果没有输出,说明没装好,请重新执行安装命令:

pip install fastapi uvicorn

❓2. 浏览器打开页面显示空白或错误信息

检查你运行的命令是否正确:

uvicorn main:app --reload
  • 确保文件名是 main.py
  • 确保 app 实例名是 app

然后重新运行,并访问正确的地址:http://127.0.0.1:8000


❓3. 修改代码后为什么没有生效?

如果你用了 --reload 参数,一般会自动生效。如果不行,尝试手动重启服务:

按 Ctrl + C 停止当前运行的程序,再重新执行启动命令即可。


六、学习建议:下一步怎么学?

当你掌握本教程的内容后,就可以继续学习以下内容:

🔸 学习目标推荐:

  1. 接受 POST 请求(提交数据)
    • 比如接收用户名和密码进行登录验证
  2. 使用 Pydantic 验证数据结构
    • 对用户的输入进行格式校验
  3. 连接数据库(例如 SQLite 或 MySQL)
  4. 构建更复杂的 RESTful API
  5. 添加中间件(如身份认证、日志记录)
  6. 部署上线(部署到服务器或云平台)

总结

通过这篇《FastAPI 入门:Python后端开发新手指南》,我们完成了:

✅ 环境搭建
✅ 核心概念了解
✅ 实战项目编写
✅ 自测 API 接口
✅ 新手常见问题解决

如果你是 Python 小白,恭喜你迈出了成为后端开发者的第一步!FastAPI 是目前最友好、高效的 Python 后端框架之一,非常适合初学者上手。


🎯 继续加油吧!下一次我们来做个带数据库的项目!

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝