美文网首页
嵌套函数

嵌套函数

作者: yalesaleng | 来源:发表于2018-07-14 11:24 被阅读6次
  1. 变量作用域
    内部函数可以直接读取访问外部函数变量,但是不能修改;访问规则是从内到外函数逐级寻找变量
def outer(a):  
    i = a + 1  
    def inner():  
        j = i + 1  
        def innest():  
          print "innest: i=%d,j=%d" % (i, j)  
        innest()  
    inner()  
  
outer(1)  
  
$ python t.py  
innest: i=2,j=3

三级函数,innest可以访问inner的变量,也可以访问outer的变量,但是均不能修改他们。(如何才能修改,我也不知道,但是python 3提供机制修改)

  1. 函数闭包
def outer(a):  
    i = a + 1  
    def inner():  
        print "inner: i=%d" % i  
    return inner  
  
foo = outer(1)  
foo()  
  
$ python t.py  
inner: i=2 

相关文章

  • Python函数嵌套-作用域-闭包-LEGB-函数销毁

    1 函数嵌套 一个函数中存在另外一个函数(定义/调用),这种方式我们称之为函数嵌套。所以:函数的嵌套主要分为嵌套调...

  • 嵌套函数和匿名函数

    1 嵌套函数 1 变量工作域 嵌套函数和主函数之间变量可以互相访问。其中嵌套函数直接可以用主函数区间的变量,主函数...

  • 每天学一点Swift----闭包(一)

    五.嵌套函数 1. Swift还支持在函数体内定义函数,这种在函数体内定义的函数称为嵌套函数 2.默认情况下,嵌套...

  • 装饰器

    [TOC] 函数 函数定义 函数调用 高阶函数 嵌套函数 装饰器 装饰器=高阶函数+嵌套函数 基础装饰器 假设有一...

  • Python笔记四 装饰器

    装饰器 = 高阶函数+函数嵌套+闭包 高阶函数 = 参数 or 返回值为函数 函数嵌套 = 在函数中定义函数 闭包...

  • 函数的嵌套-python学习15

    函数的嵌套 函数的嵌套,最简单的例子就是print(len('我爱你')),这里就是print()嵌套了len()...

  • Python装饰器2-嵌套函数

    嵌套函数 嵌套函数(Nested function)是在另一个函数(即:封闭函数)中定义的函数 引用自:https...

  • Javascript进阶——函数式编程(2)

    函数式编程中,常用的函数及使用: 组合函数 (Compose,Pipe) 概念 将需要嵌套执行的函数平铺,嵌套执行...

  • 小猿圈python学习-嵌套&匿名&高阶函数

    嵌套函数 函数里不仅可以写代码,还可以嵌套函数 name = "小猿圈" def change(): name...

  • Python进阶|函数的闭包

    前言 函数的闭包其实和函数的嵌套很相似,大家对于函数的嵌套应该是很熟悉的,那么先写一个简单的函数嵌套案例: 当然这...

网友评论

      本文标题:嵌套函数

      本文链接:https://www.haomeiwen.com/subject/kgoepftx.html