• Python老男孩 day16 函数(五) 函数的作用域


    https://www.cnblogs.com/linhaifeng/articles/6113086.html

    ——————————————————————————————————————

    八、函数的作用域

    def test1():
        print('in the test1')
    def test():
        print('in the test')
        return test1
    
    res=test()   #res接收到test1
    print(res)   #相当于print(test1)
    print(res()) #res()相当于运行test1()

    运行结果:
    in the test
    <function test1 at 0x0000021BA1C01EA0> #输出test1的内存地址
    in the test1
    None #test1没有返回值,所以print输出None

    name = 'alex'
    def foo():
        name='linhaifeng'
        def bar():
            name='wupeiqi'
            print(name)
        return bar
    a=foo()
    print(a)
    a()

    运行结果:
    <function foo.<locals>.bar at 0x0000020F90680C80> #bar的内存地址
    wupeiqi

    name = 'alex'
    def foo():
        name='linhaifeng'
        def bar():
            print(name)
        return bar
    
    a=foo()
    print(a)
    a()

    运行结果:
    <function foo.<locals>.bar at 0x0000012D3D170C80>
    linhaifeng

    name='alex'
    
    def foo():
        name='lhf'
        def bar():
            name='wupeiqi'
            def tt():
                print(name)
            return tt
        return bar
    
    func=foo()   #func=bar
    func()()     #func()=bar()=tt      func()()=tt()

    运行结果:
    wupeiqi

  • 相关阅读:
    各种数据库默认端口总结
    Entity Framework学习
    Entity Framework学习
    .Net MVC API初试
    MongoDB Shell
    MongoDB安装及简单实验
    Android Studio记录
    Android使用Fragment程序崩溃
    git操作笔记
    centos防火墙设置
  • 原文地址:https://www.cnblogs.com/zhuhemin/p/9108406.html
Copyright © 2020-2023  润新知