首页 > 编程语言 > 详细

python的闭包

时间:2019-08-04 17:14:09      阅读:54      评论:0      收藏:0      [点我收藏+]

闭包: 将函数作为返回值返回的高价函数      注: 自己对闭包的理解 函数中的函数

作用:通过闭包创建只有当前函数能访问的变量        

闭包三要件:
  1、函数嵌套
  2、返回值为内部函数
  3、内部函数必须使用相对于内部函数的外部函数的变量

  效果图:

技术分享图片

    代码:

def fn():
    a = 10
    # 定义一个内部函数
    def inner():
        print(这是内部函数:,a)

    # 将内部函数 inner作为返回值返回 
    return inner

# r是一个函数,是调用fn()后返回的函数
# 这个函数实在fn()内部定义,并不是全局函数
# 所以这个函数总是能访问到fn()函数内的变量
r = fn()    
# 调用返回的函数
r()


print(\n\n\n)

def make_averager():
    # 创建一个列表,用来保存数值
    nums = []
    # 创建一个函数,用来计算平均值
    def averager(n):
        # 将 n 添加到列表中
        nums.append(n)
        # 求平均值
        return sum(nums)/len(nums)

    return averager

a = make_averager()

print(a(2))
print(a(5))
print(a(8))

 

python的闭包

原文:https://www.cnblogs.com/FlyingLiao/p/11298754.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!