zoukankan      html  css  js  c++  java
  • 函数闭包,golbal,nonlocal

    测试1:

    age = 19
    def func1():
        age = 73
        def func2():
            nonlocal age
            # global age
            # age = 11
            print('func2 内',age)
        func2()
        print('func1 内',age)
    func1()
    print('外 ',age)
    输出: 
    func2 内 73
    func1 内 73
    外  19
    

    测试2:

    age = 19
    def func1():
        age = 73
        def func2():
            # nonlocal age
            global age
            # age = 11
            print('func2 内',age)
        func2()
        print('func1 内',age)
    func1()
    print('外 ',age)
    输出:
    func2 内 19
    func1 内 73
    外  19
    

    测试3:

    age = 19
    def func1():
        age = 73
        def func2():
            # nonlocal age
            global age
            age = 11
            print('func2 内',age)
        func2()
        print('func1 内',age)
    func1()
    print('外 ',age)
    
    输出:
    func2 内 11
    func1 内 73
    外  11
    

    测试4:

    age = 19
    def func1():
        age = 73
        def func2():
            nonlocal age
            # global age # global必须在本作用域中声明age之前使用
            age = 11
            print('func2 内',age)
        func2()
        print('func1 内',age)
    func1()
    print('外 ',age)
    输出:
    func2 内 11
    func1 内 11
    外  19
    

    测试5

    name = 'alex' #name=‘lhf’
    
    def change_name():
        name='lhf'
        print('00', name)
        # global name   # global必须在本作用域中声明age之前使用
        name = 'lhf'
        # name='aaaa' #name='bbb'
        def foo():
            # name = 'wu'
            # nonlocal name
            name='bbbb'
            print('02',name)
        print('01',name)
        foo()
        print('03',name)
    
    change_name()
    输出:
    00 lhf
    01 lhf
    02 bbbb
    03 lhf
    
    写入自己的博客中才能记得长久
  • 相关阅读:
    BZOJ 2002 [Hnoi2010]Bounce 弹飞绵羊 ——Link-Cut Tree
    BZOJ 2049 [Sdoi2008]Cave 洞穴勘测 ——Link-Cut Tree
    hdu
    hdu
    hdu
    hdu
    hdu
    hdu
    hdu
    hdu
  • 原文地址:https://www.cnblogs.com/heris/p/14684581.html
Copyright © 2011-2022 走看看