zoukankan      html  css  js  c++  java
  • 函数的嵌套和作用域链 (a,周六周日详细整理)

    # def max(a,b):
    # return a if a>b else b
    #
    # def the_max(x,y,z): #函数的嵌套调用
    # c = max(x,y)
    # return max(c,z)
    #
    # print(the_max(1,2,3))

    #函数的嵌套定义
    #内部函数可以使用外部函数的变量
    # a = 1

    # a = 1
    # def inner():
    # a = 2
    # def inner2():
    # nonlocal a #声明了一个上面第一层局部变量
    # a += 1 #不可变数据类型的修改
    # inner2()
    # print('##a## : ', a)
    # inner()
    # print('**a** : ',a)

    # outer()
    # print('全局 :',a)

    #nonlocal 只能用于局部变量 找上层中离当前函数最近一层的局部变量
    #声明了nonlocal的内部函数的变量修改会影响到 离当前函数最近一层的局部变量
    # 对全局无效
    # 对局部 也只是对 最近的 一层 有影响
    # a = 0
    # def outer():
    # # a = 1
    # def inner():
    # # a = 2
    # def inner2():
    # nonlocal a
    # print(a)
    # inner2()
    # inner()
    #
    # # outer()

    # def func():
    # print(123)
    #
    # # func() #函数名就是内存地址
    # func2 = func #函数名可以赋值
    # func2()
    #
    # l = [func,func2] #函数名可以作为容器类型的元素
    # print(l)
    # for i in l:
    # i()

    def func():
    print(123)

    def wahaha(f):
    f()
    return f #函数名可以作为函数的返回值

    qqxing = wahaha(func) # 函数名可以作为函数的参数
    qqxing()


    # def outer():

  • 相关阅读:
    python 类函数
    scala 排序
    php基础-面向对象
    PHP基础-常用的数组相关处理函数
    PHP基础-PHP中预定义的超全局数组
    PHP基础-数组
    装饰器
    Python3.x 文件操作练习
    Python3.x 文件操作
    Python3 内置函数
  • 原文地址:https://www.cnblogs.com/qinghuani/p/8128462.html
Copyright © 2011-2022 走看看