python web开发——flask

时间:2024-12-18 07:40:54

python的主流web框架有Django、tornado等,前两者功能齐全,适用于工业,而flask简单易上手。

Flask框架使用

1、入门

路由解析默认是@app.route("/"),只需要输入ip地址和端口即可

from flask import Flask

app = Flask(__name__)

# 路由解析: 通过用户访问的路径,匹配相应的函数(浏览器输入最后部分)
@app.route("/index")
def hello_word():
    return "你好"

if __name__ == "__main__":
    app.run(debug=True)   # True表示开始debug模型

在浏览器中输入http://127.0.0.1:5000/index,得到下方结果:

2、传参

定义单个参数:

from flask import Flask

app = Flask(__name__)   # Flask有参数template_folder可以指定html模板存放位置,默认为当前项目下的`templates`文件夹

# 传入参数name 
@app.route("/user/<name>")
def hello_word(name):
    return "你好,%s"%name

if __name__ == "__main__":
    app.run(debug=True)   # True表示开始debug模型

在浏览器中输入http://127.0.0.1:5000/user/xiaofanghttp://127.0.0.1:5000/user/xiaofang,得到下方结果

定义多个参数:默认是字符串类型

@app.route("/user/<name>/<password>")
def hello_word(name, password):
    return "你好,%s,你的密码为%s"%(name,password)

传入指定类型的参数:支持int和float格式

@app.route("/user/<name>/<int:id>")
def hello_word(name, id):
    return "你好%s,你的密码为%d"%(name,id)

若定义多个路由函数,自动根据传入的参数及其类型来选择相应的函数执行,但是不有不能重复,用户通过唯一路径访问不通函数

3、使用render_template打开网页

3.1 向页面传递变量

首先编写一个index.html文件(python可以新建html文件),内容如下

<!DOCTYPE html>
<html lang="en">
<head>
  &l