flask框架是python中的一个轻量级的前后端开发框架,不同于Django,flask只提供基础的功能,其他的功能需要安装各种插件。因为轻量,所以可以用来做一些小工程和低流量的开发;大型工程也可以使用flask框架,但是就需要安装很多插件。

  1. helloworld程序
    首先需要将flask模块导入,为了方便可以使用import *的方式,如果为了节省存储,可以首先导入Flask。然后需要用Flask(name)的方式初始化一个app。然后需要建立一个路由。
from flask import *
from flask import Flask
app=Flask(__name__)     #初始化app

@app.route('/')     #建立路由
def hello():
    return 'hello world'      #定义路由执行结果

if __name__ == '__main__':
    app.run()     #运行app

在这里插入图片描述
2.设置多个路由变量

from flask import *

app=Flask(__name__,static_url_path='/s',static_folder='/static')

@app.route('/')      #设置根目录路由
def index():
    return '<h1>hello world</h1>'
@app.route('/user/<id>')        #设置分支目录路由,并设定路由变量
def type(id):
    if int(id)==1:
        return 'python'
    if int(id)==2:
        return 'java'
    if int(id)==3:
        return 'C++'
if __name__ == '__main__':
 app.run()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里的id还可以指定类型

@app.route('/<string:id>')
def type(id):         
    if id=='s':
        return 'python'
    if id=='ss':
        return 'java'
    if id=='sss':
        return 'C++'

具体效果同上
3.获取表单并渲染

@app.route('/index',methods=['GET','POST'])    #获取表单(模板)并渲染
def index():
    if(request.method=='GET'):
        return render_template('index.html')
    elif(request.method=='POST'):
        name=request.form.get("name")
        password=request.form.get("key")

        print(name,password)
        return "Get the post"

其中,index.html是放在templates文件夹下的一个网页文件,其中包括1个文本栏,1个密码栏,1个提交按键,并规定表单提交类型为“POST”。在路由函数中,我们可以通过指定其接收方式来转到不同的页面。
通过Get方式进入到index.html

当我们点击提交按钮后,页面接收到“Post”Request,页面转到“Get the post”
4.重定向

from flask import *

app=Flask(__name__)

@app.route('/inde')
def index():
    return redirect(url_for('haha'))
@app.route('/')
def hello():
    return "You succeed"
@app.route('/haha')
def haha():
    return "haha"

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

在这里插入图片描述
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐