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

python 闭包

时间:2019-01-13 00:07:06      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:避免   for   round   面向对象   span   margin   全局   mil   条件   

eg:

def lazy_sum(*args):

def sum():

z = 0

for i in args:

z += i

return z

return sum

? ?

1. 闭包产生条件

要创建闭包,必须满足以下条件:

必须包含一个嵌套函数

嵌套函数必须引用封闭函数中定义的值(自由变量)

封闭函数必须返回嵌套函数

? ?

? ?

? ?

? ?

2. 闭包的好处

取代硬编码中的常量

避免使用全局值,并提供某种形式的数据隐藏。

提供一致的函数签名

实现面向对象

python 闭包

标签:避免   for   round   面向对象   span   margin   全局   mil   条件   

原文地址:https://www.cnblogs.com/wuxiangli/p/10261266.html

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