
Python
文章平均质量分 85
zbbfb2001
这个作者很懒,什么都没留下…
展开
-
Python - Decorator(装饰器) - Cell和Free Variable
谈到装饰器(decorator),离不开闭包(closure)!谈到闭包(closure),离不开Cell和Free Variable!只要理解了Cell和Free Variable,那才算是真正地理解了闭包和装饰器!什么是Cell和Free Variable我们先来看Free Variable。我们知道Python的变量(variable)都是在某个作用域中的。这4个作用域你一定了解,local, nonlocal, global(module) 和 built-in。某个变量名的查找原创 2021-07-08 15:38:58 · 451 阅读 · 0 评论 -
Python - Decorator(装饰器) - 带参数的
我们通过以示例来看看带参数的装饰器到底怎么回事。from time import perf_counterfrom functools import wrapsdef repeated(times): def outer(fn): @wraps(fn) def inner(*args, **kwargs): for i in range(0, times): result = fn(*args, *原创 2021-07-08 14:32:36 · 546 阅读 · 0 评论 -
Python - 装饰器(Decorator) - 可调用的(Callable)
其实这个是个大家都已比较熟悉的话题,Callable,也就是可调用的。但当接触到装饰器(decorator)的时候,表现形式复杂些时,我发现还是有必要理清一下的。什么是Callable任何可以使用括号操作符的目标都是可调用的。如果我们在Python使用某个目标具有以下特点,我们就说这个目标是可调用的。目标名在Python中目标名往往都是绑定某个目标的内存地址。我们就是通过目标名最终引用到目标本身。括号当标签名后面跟着括号时,那就是说有代码被执行了输入和输出输入:也就实参,在原创 2021-07-08 12:53:05 · 598 阅读 · 0 评论