python 培训之 装饰器

1. 高阶函数 接收 函数作为参数,返回函数。

2. 函数闭包

3. 接收一个函数为参数,对其进行包装,然后返回一个包装函数(tip:包装函数中调用并返回参数函数。

#! /usr/env/python
# -*- coding:UTF-8 -*-
from __future__ import print_function def f1(x):
return x*2 def new_fn(f):
def fn(x):
print("call"+f.__name__+'()')
return f(x)
return fn a = new_fn(f1)(2)
print(a)
print("##################")
b = f1(2)
print(b) @new_fn
def f1(x):
return x*2 f1 = new_fn(f1)
f1(5)

函数闭包

python 培训之 装饰器

函数参数

python 培训之 装饰器

这两个是python中的可变参数。*args表示任何多个无名参数,它是一个tuple;**kwargs表示关键字参数,它是一个 dict。并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前,像foo(a=1, b=’2′, c=3, a’, 1, None, )这样调用的话,会提示语法错误“SyntaxError: non-keyword arg after keyword arg”。

python动态参数解释:

* 表示一个任意长度的tuple(元组),可以接受一连串的参数;

** 表示一个dictionary(字典),参数形式是“key=value”。

Decorator

python 培训之 装饰器

python 培训之 装饰器

上一篇:Graphviz从入门到不精通


下一篇:Vue-cli搭建完项目,各文件解释