边走边聊 Python 3.8:Chapter 13:Flask 入门
Chapter 13:Flask 入门从脚本到网页,是程序员世界观的第一次扩张。本章将带你理解路由、模板、静态文件、表单提交等 Web 开发的核心概念,并把你的知识库系统升级成一个真正可在浏览器访问的应用。你会体验到:当程序能被多人访问,它就拥有了新的生命。“从脚本到网页,是程序员世界观的第一次扩张。”前12篇我们从文件操作、Tkinter、pandas、定时推送、SQLite 一直玩到本地知识库。今天进入网页开发篇:用Flask把 MyKB 变成浏览器就能访问的网页版(http://127.0.0.1:5000)!为什么这一篇选 Flask 而不是 Django?轻量:Flask 只有核心功能(路由+模板),安装包仅 2MB,启动只需 1 秒;Django 功能全家桶,启动要 5-10 秒,Win7 老机器容易卡。学习曲线平滑:适合脚本玩家快速上手,不需要学 MVT 模式。Win7 友好:依赖极少,Python 3.8 原生兼容,无需复杂配置。灵活:想加功能就加,想保持简单就简单(后面可以无缝升级到 FastAPI)。我们会先从“Hello World”开始,然后完整把第12篇的知识库改成 Flask 网页版。全程附底层原理 + Win7 实战坑点,让你既能跑通,又懂“为什么”。1. 安装 Flask + 虚拟环境(Win7 推荐做法)步骤(命令提示符):cdD:\MyKB python-mvenv venv# 创建虚拟环境(只需一次)venv\Scripts\activate# 激活(以后每次打开新窗口都要执行这一行)pipinstallflask==2.3.3# 指定兼容 Python 3.8 的稳定版本激活后命令提示符前面会出现(venv),表示已进入虚拟环境。为什么用虚拟环境?防止不同项目包冲突,Win7 老系统尤其推荐。2. 第一个“Hello World”路由(5分钟上手)新建文件app.py(放在 MyKB 根目录):# -*- coding: utf-8 -*-fromflaskimportFlask app=Flask(__name__)# 创建 Flask 应用实例@app.route('/')# 路由:访问根路径 /defhello():return'h1🎉 Flask Hello World!/h1p欢迎来到 MyKB 网页版/p'if__name__=='__main__':app.run(host='127.0.0.1',port=5000,debug=True)# 启动服务器运行:python app.py浏览器打开 http://127.0.0.1:5000 就能看到页面!底层原理(源码级):Flask 基于Werkzeug(一个 WSGI 工具包)。app.run()内部启动了一个简单的 Werkzeug 开发服务器(基于 socket + HTTP 协议)。@app.route('/')其实是把函数注册到app.url_map(一个 URL 规则字典)。浏览器发 HTTP GET 请求 → Werkzeug 解析请求 → 匹配路由 → 执行视图函数 → 返回 Response 对象 → 浏览器渲染。源码核心就几百行,极简!(感兴趣可以看flask/app.py和werkzeug/serving.py)3. Jinja2 模板、静态文件、表单提交(三大核心)1. Jinja2 模板(动态 HTML)新建文件夹templates(必须叫这个名字),里面建index.html:!DOCTYPEhtmlhtmlheadmetacharset="utf-8"titleMyKB/title/head
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2571130.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!