一、什么是Flask?

Flask是一个用Python编写的轻量级Web框架,它简单易用、灵活轻量,非常适合初学者快速上手开发Web应用。相比其他复杂框架(如Django),Flask更注重“按需扩展”,不需要预先配置大量组件,就能快速实现一个简单的网页。

二、安装Flask

在开始之前,我们需要先安装Flask。确保你的电脑已安装Python(推荐Python 3.6+),然后打开终端(Windows用命令提示符,Mac/Linux用终端),执行以下命令:

pip install flask

如果提示权限问题,可尝试用pip3 install flask(针对Python 3)。安装完成后,输入flask --version检查是否成功安装。

三、第一个Flask应用:路由与视图函数

“路由”就像网页的“入口”,比如访问http://localhost:5000/时,Flask需要知道这个请求对应哪个“处理函数”(视图函数);“视图函数”则是处理请求并返回内容的函数。

1. 编写基础代码

创建一个新的Python文件(例如app.py),输入以下代码:

# 导入Flask类
from flask import Flask

# 实例化Flask应用,app是应用对象
app = Flask(__name__)

# 定义路由:当用户访问根路径“/”时,执行下面的函数
@app.route('/')
def home():
    # 函数返回的字符串会自动作为网页内容返回给用户
    return "Hello, Flask!"

# 运行应用(仅在直接执行该脚本时生效)
if __name__ == '__main__':
    app.run()

2. 代码解释

  • 导入Flaskfrom flask import Flask是为了使用Flask提供的Web开发功能。
  • 实例化appapp = Flask(__name__)创建一个Flask应用对象,__name__是Python内置变量,表示当前模块名称(用于定位资源路径)。
  • 路由装饰器@app.route('/')是关键!它的作用是“绑定”路由路径(这里是根路径/)和下面的函数home。当用户访问http://localhost:5000/时,Flask会自动调用home()函数。
  • 视图函数home()函数是处理请求的核心,它的返回值(这里是字符串“Hello, Flask!”)会被Flask自动转换为HTTP响应,直接显示在浏览器中。
  • 运行应用app.run()启动Flask内置的开发服务器,默认端口是5000,地址为http://127.0.0.1:5000

3. 运行应用并访问

在终端执行python app.py(确保当前路径是app.py所在目录),你会看到类似以下输出:

 * Serving Flask app 'app'
 * Running on http://127.0.0.1:5000 (Press CTRL+C to quit)

此时打开浏览器,访问http://localhost:5000,就能看到网页上显示“Hello, Flask!”,恭喜你!第一个Flask页面完成了!

四、进阶:动态路由(带参数的页面)

除了固定路径,Flask还支持动态路由,比如用户访问/user/张三时,页面显示“Hello, 张三!”。
修改app.py代码,添加一个带参数的路由:

from flask import Flask
app = Flask(__name__)

# 基础路由(根路径)
@app.route('/')
def home():
    return "Hello, Flask!"

# 动态路由:<username>是参数占位符
@app.route('/user/<username>')
def user_profile(username):
    # 函数接收username参数,用于个性化返回内容
    return f"Hello, {username}!"

if __name__ == '__main__':
    app.run()

现在访问http://localhost:5000/user/Alice,页面会显示“Hello, Alice!”;访问/user/Bob,则显示“Hello, Bob!”。

小提示:动态路由支持多种类型,比如<int:num>接收整数参数(例如/user/123num=123),<float:price>接收浮点数,默认是字符串类型。

五、总结

  1. 安装pip install flask
  2. 核心概念
    - 路由:通过@app.route(路径)绑定URL与视图函数。
    - 视图函数:处理路由请求,返回网页内容。
    - 运行应用app.run()启动开发服务器。
  3. 关键技巧
    - 用if __name__ == '__main__'确保app.run()只在直接执行脚本时生效。
    - 动态路由可通过<参数名>传递变量,增强页面灵活性。

现在你已经掌握了Flask最基础的路由和视图函数知识,尝试修改代码吧!比如:
- 改路由路径(如/about),让首页显示不同内容。
- 给视图函数返回HTML标签(如<h1>Hello</h1>),让页面更美观。

Flask的世界充满乐趣,快去探索更多功能吧!

小夜