2019-07-01
阅读量:
407
何时以及为何使用闭包
何时以及为何使用闭包:
- 由于闭包用作回调函数,它们提供某种数据隐藏。这有助于我们减少全局变量的使用。
- 当我们的代码中的函数很少时,闭包被证明是有效的方式。但是如果我们需要有很多功能,那就去上课(OOP)吧。
# Python program to illustrate
# closures
import logging
logging.basicConfig(filename='example.log', level=logging.INFO)
def logger(func):
def log_func(*args):
logging.info(
'Running "{}" with arguments {}'.format(func.__name__, args))
print(func(*args))
# Necessary for closure to work (returning WITHOUT parenthesis)
return log_func
def add(x, y):
return x+y
def sub(x, y):
return x-y
add_logger = logger(add)
sub_logger = logger(sub)
add_logger(3, 3)
add_logger(4, 5)
sub_logger(10, 5)
sub_logger(20, 10)






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论