1、先从不加装饰器的函数入手

上述函数给一个参数,得到一个返回值,然后打印这个返回值。
2、加上装饰器

可以看到,在inner函数内部没有返回值,所以在执行原函数func后,赋值给temp,然后返回一个temp.
3、返回值实例之用户登录验证。

也就是说只有用户验证成功后才能执行func函数,进而得到server_list。
4、对登录函数传参数


在login函数中传入两参数,第二个参数作为验证的key值,只有传入的key验证成功才可以执行,在inner函数中是两个参数,但在fetch_server_list中只需要一个参数,所以在得到token时,必须将其删除,否则就会报错。
删除方法:
1、del kwargs[‘token‘]
2、kwargs.pop(‘token‘) ,这句等价于下面两句
key = kwargs["token"]
del kwargs["token"]
原文:http://www.cnblogs.com/crazyforever/p/5081914.html