通俗易懂解释python闭包,闭包python 菜鸟教程_1

  通俗易懂解释python闭包,闭包python 菜鸟教程

  “闭包”这个词相信大部分学过编程的同学都很熟悉,但有时候很难理解。

  先看定义:闭包是由函数和与其相关的引用环境组合而成的实体。比如参考资源中就有这样的的定义:在实现深约束时,需要创建一个能显式表示引用环境的东西,并将它与相关的子程序捆绑在一起,这样捆绑起来的整体被称为闭包。.

  Python闭包其实不是什么非常复杂的东西。

  一般来说,如果外部作用域(而不是全局作用域)中的变量在内部函数中被引用,那么内部函数被认为是一个闭包。它只是一个“内部”函数,由一个名字(变量)引用,这个名字(变量)是包含它的“外部”函数的局部变量。

  可能你看到这里还不明白什么是封闭。没关系。看了下面几个小例子你就明白了!

  #!/usr/bin/envpython

  #编码=utf-8

  #http://www.pythontab.com

  #定义一个函数

  defplus(编号):

  #在函数中定义另一个函数。事实上,这个函数内部的函数被认为是一个闭包。

  defplus_in(数字输入):

  #在这里打印number_in变量,这样可以更清楚的知道传入的是哪个变量。

  printstr(number_in) rn

  returnnumber数字输入

  #其实这里返回的是闭包的结果。

  returnplus_in

  #给加号函数赋值,这个20就是参数号

  v1=正(20)

  Printv1(100)#注意,这里的100实际上给出了参数number_in的运行结果

  100

  20注意:100是print str(number_in) rn 打印的结果。现在,你明白什么是封闭包了吧~ ~

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: