Python web 后端开发如何入门或进阶?

请问大佬们用 python 做 web 后端开发需要掌握哪些知识呢,想找一个后端实习的工作。
Python web 后端开发如何入门或进阶?

23 回复

学会谷歌


想搞Python后端,路子其实很清晰,分三步走:

第一步:把基础打牢。 别一上来就Django、Flask。先把Python核心语法、数据结构(列表、字典这些)、函数、面向对象搞明白。然后必须学数据库,MySQL或PostgreSQL选一个,知道怎么用SQL语句增删改查。HTTP协议RESTful API设计的概念也得懂,这是前后端沟通的基石。

第二步:选个框架,死磕一个项目。 框架就两个主流选择:

  • Django:大而全,自带ORM、管理后台,适合快速开发标准业务(比如内容管理系统、电商平台)。学它等于学了一套“官方最佳实践”。
  • Flask:轻量灵活,需要啥功能自己选库组装,适合理解Web底层(路由、请求响应)和构建微服务。

建议新手直接从Django开始,跟着官方教程做一个博客系统。把模型(Model)、视图(View)、模板(Template)这个MVT流程跑通,实现文章发布、用户登录就入门了。

第三步:往深了挖,搞定“生产级”问题。 会写CRUD只是开始,要进阶就得处理更复杂的情况:

  • 并发与异步:当用户多了,学习用asyncioFastAPI(强烈推荐进阶使用)或者Django的异步支持来处理高并发请求。
  • 缓存:用Redis把频繁访问的数据(如首页、用户会话)存起来,减轻数据库压力。
  • 消息队列:用Celery(配合Redis或RabbitMQ)把耗时的任务(发邮件、处理视频)丢到后台异步执行,不让用户干等着。
  • API文档与测试:用Swagger/OpenAPI(FastAPI自带)自动生成API文档,并用pytest好好写单元测试和接口测试。
  • 容器化:用Docker把应用和环境打包,部署起来一致又方便。

一句话总结:基础 → Django项目实战 → 学习异步、缓存、队列等组件解决实际问题。

最后,给你个FastAPI的快速例子,感受下现代异步框架的写法:

from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
from typing import Optional

app = FastAPI()

# 定义数据模型
class Item(BaseModel):
    name: str
    price: float
    is_offer: Optional[bool] = None

# 内存里“存”点数据
fake_db = {}

@app.get("/")
async def read_root():
    return {"Hello": "World"}

@app.get("/items/{item_id}")
async def read_item(item_id: int):
    if item_id not in fake_db:
        raise HTTPException(status_code=404, detail="Item not found")
    return fake_db[item_id]

@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):
    fake_db[item_id] = item
    return {"item_id": item_id, "item": item}

跑起来后,访问 http://127.0.0.1:8000/docs 就能看到自动生成的交互式API文档,边写边测。

保持动手,遇到问题多查官方文档和GitHub。

https://github.com/ltoddy/flask-tutorial

了解一下?

其实啊,真正做业务的时候,还是看你编程基础,用的大部分都是 python 标准库里面的东西和一些数据库(包括 ORM )相关的库。
我推荐是,你想学什么 web 框架,就跟着文档走一边,然后了解这个 web 看框架有什么功能,为你提供了什么。
然后自己慢慢做些项目。
相信你会学好的。

准确理解需求

后端开发要学好多东西,语言倒是其次,我记得 github 有一个人总结了后端开发学习路线。

感谢,虽然这个图是为了入门,对照这个图,发现虽然我做了好多年 web 开放,然而还是有不少盲点。

Python web 能找到实习机会?感觉需求很少啊。。。

哪抄的?
不错啊。

好的,我现在用的是 Django 也在自己做一些小项目。因为我是非科班的,所以不清楚离开发门槛还有多远,具体还缺些什么知识。

Django,纯后端的话,需要掌握的不多,写好业务逻辑。数据库的构建,
redis 缓存,celery 定时任务这些。

大多招 python web 这块的,基本要求 Django,flask,tornado,三者会其中一二,而且纯后端不多,要求 html,css 等前段知识

Python 基础(可以去看看《流畅的 Python 》)要打好,然后时间富裕的话,学一点算法和数据结构,争取让自己的代码精炼一点,
然后多读官方文档,多做项目,毕竟项目驱动学习才是最快的成长道路。

谢谢指点 前端知识要求挺高的吗?现在的水平也只是会一些基本的。

嗯 现在在看流畅的 python 和 Data structures and Algorithms in Python。但是我现在学习的重心应该是在项目上还是书上呢,我感觉现在书上的知识对项目没有什么太大的帮助。

python 后端的实习应该比较少,毕竟 python 后端的工作相对来说也比较少
作为一个也刚刚跳坑入 python web 的菜鸟
框架至少懂一个( flask, django, ,tornado ),数据库( mysql 等)懂一两个,缓存和 celery 懂的话也最好,html 和 css 能看懂也是比较基本的,不过现在很多企业都是全后端分离了,通过 json 交互(至少我目前是这样)
而且楼主应该还是学生,校招更看中的是学习能力,当然是懂的越多越好,越深越好,如果想进大公司,算法之类我想也是跑不了的~

好好打基础才是最重要的,项目不必强求,虽然自己写个博客也就几天时间。

项目驱动为主,然后每天空闲时间看流畅的 py。

劝你别用 Python

现在做 py 开发工资水平怎么样?

我也不清楚额,现在用的不是 py,不过看招聘应该和 java 之类的差不多。

回到顶部