zoukankan      html  css  js  c++  java
  • 什么是闭包

    给出字面的定义先:闭包是由函数及其相关的引用环境组合而成的实体

    函数可以作为另一个函数的参数或返回值,可以赋给一个变量。函数可 以嵌套定义,即在一个函数内部可以定义另一个函数,有了嵌套函数这种结构,便会产生闭包问题。

    所以,在函数的嵌套里面,如:

    def ExFunc(n):
         sum=n
         def InsFunc():
                 return sum+1
         return InsFunc

    insFunc对外部作用域的变量进行了引用,我们就认为里面的这个insFunc是闭包的

    注意!!!!闭包中是不能修改外部作用域的局部变量的

    >>> def foo():  
    ...     m = 0  
    ...     def foo1():  
    ...         m = 1  
    ...         print m  
    ...  
    ...     print m  
    ...     foo1()  
    ...     print m  
    ...  
    >>> foo()  
    0  
    1  
    0  

    https://www.cnblogs.com/JohnABC/p/4076855.html
  • 相关阅读:
    Flume-概述-安装
    Hive-函数
    Hive_查询
    Hive-DML数据操作
    JDBC-文档
    Hive-DDL数据定义
    Hive-数据类型
    理解RESTful架构
    REST介绍
    [转]详述DHCP服务器的三种IP分配方式
  • 原文地址:https://www.cnblogs.com/yjybupt/p/10247417.html
Copyright © 2011-2022 走看看