python后端的学习笔记1

张开发
2026/4/4 4:48:59 15 分钟阅读
python后端的学习笔记1
python 做web 后端主流的框架和项目结构Python Web 后端主流框架 标准项目结构直接照着用我给你用最实用、最主流、最适合你做买菜小程序的方式讲不搞虚的直接能落地。一、Python Web 后端 3 大主流框架按你现在的需求选1.FastAPI现在最火、最快、最简单✅最推荐你用写接口超快自动生成 API 文档性能接近 Java / Go代码极简适合做买菜小程序后端适合新手、兼职、快速开发适合你的项目社区团购 / 线上买菜用户端 完美匹配2.Django大而全企业最常用自带后台管理、数据库、用户系统适合大型网站、管理系统比 FastAPI 重一点开发速度慢一点3.Flask微型框架灵活很小很轻但功能要自己装插件不如 FastAPI 现代 结论直接记你做线上买菜 demo → 直接用 FastAPI最快、最简单、最容易找到工作、最符合现在市场主流。二、FastAPI 标准项目结构企业真实结构直接复制这是国内大厂、外包、创业公司通用结构你照着建以后找工作直接能用。your_project/ ├── main.py # 项目入口启动文件 ├── api/ # 所有接口放这里 │ ├── __init__.py │ ├── user.py # 用户接口登录、注册 │ ├── goods.py # 商品接口列表、详情 │ └── order.py # 订单接口下单、支付 ├── core/ # 核心配置 │ ├── __init__.py │ ├── config.py # 数据库地址、密钥等 │ └── security.py # token、密码加密 ├── db/ # 数据库 │ ├── __init__.py │ ├── session.py # 数据库连接 │ └── base.py # 模型基类 ├── models/ # 数据库表结构ORM │ ├── __init__.py │ ├── user.py │ ├── goods.py │ └── order.py ├── schemas/ # 接口参数格式请求/返回 │ ├── __init__.py │ ├── user.py │ ├── goods.py │ └── order.py ├── services/ # 业务逻辑核心代码 │ ├── __init__.py │ ├── user_service.py │ └── order_service.py └── requirements.txt # 依赖包列表三、这个结构为什么专业接口、业务、数据三层分离改业务不影响接口改数据库不影响业务团队协作不乱找工作时面试官一看就知道你懂企业规范四、最简单的启动代码复制就能跑1. 安装依赖pipinstallfastapi uvicorn sqlalchemy pymysql2. main.py 入口文件fromfastapiimportFastAPIimportuvicorn# 创建appappFastAPI(title线上买菜小程序后端,version1.0)# 测试接口app.get(/)defhome():return{message:欢迎使用买菜系统}# 商品列表接口app.get(/goods/list)defgoods_list():return[{id:1,name:西红柿,price:5.9},{id:2,name:黄瓜,price:3.9}]if__name____main__:uvicorn.run(main:app,host127.0.0.1,port8000,reloadTrue)运行后访问http://127.0.0.1:8000就能看到接口返回数据自动接口文档超级好用http://127.0.0.1:8000/docs五、你做线上买菜小程序能直接用的模块我给你列好你直接开发用户模块登录、注册商品模块列表、分类、详情购物车模块订单模块创建、支付地址模块FastAPI 2 小时就能把 demo 跑通六、我可以直接给你一套完整可运行的线上买菜后端源码带数据库、带接口、带文档你直接改改就能当毕设 / 项目作品你要我现在直接把完整源码数据库表结构发给你吗我给你逐行、超级通俗、小白也能懂的代码解析你一看就明白自己写的是什么。完整代码逐行解析# 1. 从 fastapi 库里面 导入 FastAPI 这个工具fromfastapiimportFastAPI# 2. 导入 uvicorn它是用来“启动服务器”的工具importuvicorn→ 意思我要用 FastAPI 做后端用 Uvicorn 跑起来# 3. 创建一个 app 对象这就是你的整个后端服务appFastAPI(title线上买菜小程序后端,version1.0)→app 你的线上买菜系统后端本体# 4. 写一个接口访问 / 就返回这句话app.get(/)defhome():return{message:欢迎使用买菜系统}解释超级重要app.get(/)浏览器访问根地址时触发def home() 接口执行的函数return 返回给前端/小程序的数据你打开http://127.0.0.1:8000/就会看到{message: 欢迎使用买菜系统}# 5. 商品列表接口app.get(/goods/list)defgoods_list():return[{id:1,name:西红柿,price:5.9},{id:2,name:黄瓜,price:3.9}]地址/goods/list作用返回蔬菜列表前端/小程序调用这个接口就能拿到商品数据# 6. 主程序入口运行这个文件就启动服务if__name____main__:uvicorn.run(main:app,host127.0.0.1,port8000,reloadTrue)这句是启动命令main:app→ 运行main.py里的apphost→ 本机地址port→ 端口 8000reloadTrue→改代码自动重启超级方便开发三句话总结这个代码能干啥启动一个后端服务提供2个接口首页、商品列表小程序/前端可以直接调用这些接口拿数据运行后你能看到什么运行命令python main.py访问http://127.0.0.1:8000→ 看到欢迎语http://127.0.0.1:8000/goods/list→ 看到西红柿、黄瓜数据http://127.0.0.1:8000/docs→ 自动生成接口文档超级强大你现在这个代码 ✅ 能跑✅ 能对接小程序✅ 能做线上买菜项目后端✅ 企业真实开发结构需要我继续教你加数据库、加购物车、加订单、加用户登录吗我可以一步步带你把这个变成完整可上线项目。这句是 Python 里最经典、必懂的一句话我用最直白的话给你讲懂一句话解释if __name__ __main__:意思就是只有直接运行这个文件时下面的代码才执行被别人导入时不执行。用生活例子讲你这个文件叫main.py你在命令行运行python main.py→ 这时__name__自动变成__main__→ 条件成立→启动服务器如果别的文件写importmain→ 这时__name__是main→ 条件不成立→下面的 uvicorn.run 不会跑→ 不会莫名其妙启动一个服务放在你代码里的作用if__name____main__:uvicorn.run(main:app,host127.0.0.1,port8000,reloadTrue)就是只有我自己运行 main.py 时才启动后端服务别人导入我这个文件时不启动服务。超级简单记忆if __name__ __main__:“只有直接跑我这个文件时才执行下面这段”如果你愿意我可以再给你讲为什么要这么写不写会出什么问题新手最容易踩的坑你现在是不是完全懂了完全正确就是这个意思你一句话就抓到精髓了防止别的文件 import 我的时候把服务器给偷偷启动了。举个最真实的场景比如以后你有个文件test.py想测试一下frommainimportapp如果你没写if __name__ __main__那一导入服务器就直接启动了这就乱套了。加上这句之后直接运行main.py→ 启动服务 ✅被其他文件import main→ 只导入代码不启动服务 ✅总结成一句最土的话我自己跑可以启动服务器别人引用我别乱动。你现在已经完全理解 Python 最经典的这一行了。

更多文章