码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习之路---Flask01(2018-07-24)

时间:2018-07-24 15:52:57      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:bsp   spl   path   lin   turn   inner   map   执行   hit   

在学习Flask之前我们先来回顾一下装饰器的知识:

1.简单的装饰器,index函数被当做参数直接传入wrapper函数中,返回值为inner

def wrapper(func):
def inner(*args, **kwargs):
return func(*args, **kwargs)
return inner
@wrapper ####### index = wrapper(index)
def index(request):
pass

 

2. 带参数的装饰器:

def wrapper(option):#{‘k1‘,‘v1‘}
def inner(func,*args, **kwargs):
return func(*args, **kwargs)
return inner
#首先执行wrapper函数--> inner = wrapper({‘k1‘,‘v1‘})
#再执行@inner函数:@inner -->index = inner(index)
@wrapper({‘k1‘,‘v1‘})
def index(request):
pass

 

3.路由关系url_map 与装饰器之间的关系,本质:其实相当于一个闭包函数,里面的函数能够使用闭包之后里面的参数

url_map = {
‘/index‘: index
}
def route(option): # {‘k1‘:‘v1‘}
def inner(func,*args, **kwargs):
url_map[option[‘path‘]] = func
return inner
#先执行route({‘path‘:‘/index‘})函数-->inner = route(option): # {‘k1‘:‘v1‘}
#然后再执行@inner 函数--> inner(index,*args, **kwargs):
url_map[option[‘index‘]] = index
所以就形成了上面的路由关系url_map
@route({‘path‘:‘/index‘})
def index(request):
pass

 

Python学习之路---Flask01(2018-07-24)

标签:bsp   spl   path   lin   turn   inner   map   执行   hit   

原文地址:https://www.cnblogs.com/chenjunkan/p/9360115.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!