Python / 已完成
Python 后端够用基础
掌握写后端最常用的变量、函数、类、模块、异常、类型提示和异步。
返回文章积累一句话:学后端不需要先把 Python 所有角落背完,先掌握变量、函数、类、模块、异常、类型提示、虚拟环境和异步这几块,就能开始写真实 API。
本篇学完你会什么:能读懂 FastAPI 项目里的常见 Python 代码,知道报错大概该往哪里查。
1. Python 在后端里负责什么
后端像一个办事大厅。前端发请求过来,Python 后端负责:
- 接住请求
- 检查参数
- 调用业务逻辑
- 读写数据库
- 返回 JSON
所以你学 Python,不是为了炫技,而是为了把这些事情写清楚、写稳定。

2. 变量和类型
变量就是给数据起名字。
username = "tom"
age = 18
is_admin = False常见类型:
| 类型 | 例子 | 后端里常见用途 |
|---|---|---|
str | "tom" | 用户名、标题、token |
int | 18 | id、页码、数量 |
float | 9.9 | 金额、比例 |
bool | True | 是否启用、是否管理员 |
list | [1, 2, 3] | 列表数据 |
dict | {"name": "tom"} | JSON 对象 |
3. 函数
函数就是把一段动作打包。
def add(a: int, b: int) -> int:
return a + bFastAPI 的接口本质上也是函数:
@router.get("/users/{user_id}")
async def get_user(user_id: int):
return {"id": user_id}大白话:用户访问这个地址,FastAPI 就调用这个函数。
4. 字典、列表和 JSON
后端最常返回 JSON,而 Python 里最像 JSON 的就是字典和列表。
user = {
"id": 1,
"username": "tom",
"roles": ["admin", "editor"],
}返回给前端后,会变成:
{
"id": 1,
"username": "tom",
"roles": ["admin", "editor"]
}5. 模块和包
项目大了以后,不能把所有代码写在一个文件。
app/
main.py
api/
users.py
services/
user_service.py导入代码:
from app.services.user_service import get_user_by_id大白话:模块就是文件,包就是文件夹,import 就是把别处的工具拿过来用。
6. 类和对象
类像一张表格模板,对象是填好的一行数据。
class User:
def __init__(self, username: str):
self.username = username
user = User("tom")
print(user.username)ORM 里经常看到类:
class User(Base):
__tablename__ = "users"这里的 User 类不是普通类,它代表数据库里的 users 表。
7. 异常处理
异常就是程序遇到不正常情况。
try:
value = int("abc")
except ValueError:
print("这不是数字")后端里不要让错误直接炸给用户,要变成清楚的接口错误。
from fastapi import HTTPException
raise HTTPException(status_code=404, detail="用户不存在")8. 类型提示
类型提示不是必须,但后端项目里非常重要。
def get_total(price: float, count: int) -> float:
return price * count它的价值:
- 编辑器能提示你
- FastAPI 能自动理解参数类型
- Pydantic 能做数据校验
- 以后看代码更容易
9. 虚拟环境和依赖
虚拟环境就是给每个项目准备独立工具箱。
python -m venv .venv
source .venv/bin/activate
pip install fastapi uvicorn
pip freeze > requirements.txt以后别人拿到项目:
pip install -r requirements.txt就能装同样的依赖。
10. async/await
后端常常要等数据库、等网络、等文件。
async 的意思是:这个函数可能会等待,等待的时候可以先处理别的请求。
async def get_user(user_id: int):
user = await db.get(User, user_id)
return user先记住:
| 写法 | 适合什么 |
|---|---|
def | 普通计算、简单逻辑 |
async def | 数据库、网络请求、文件等等待操作 |
await | 等一个异步结果回来 |
11. 学习顺序
- 先会变量、函数、字典、列表。
- 再会模块拆分。
- 再会类和对象。
- 再会异常处理。
- 再会类型提示。
- 最后理解 async/await。
总结表
| 名词 | 大白话 |
|---|---|
| 变量 | 给数据起名字 |
| 函数 | 把一段动作打包 |
| 字典 | Python 里的 JSON 对象 |
| 模块 | 一个 Python 文件 |
| 包 | 一组 Python 文件夹 |
| 类 | 对象模板 |
| 异常 | 程序遇到不正常情况 |
| 类型提示 | 给代码标注数据形状 |
| 虚拟环境 | 项目的独立工具箱 |
| async/await | 等待时不堵住整个服务 |
下一篇建议:大白话讲解——HTTP JSON REST API 大白话。