美文网首页Python
[Python] global,nonlocal

[Python] global,nonlocal

作者: 何幻 | 来源:发表于2016-03-07 07:16 被阅读15次

    (1)global:修改全局变量

    a=1
    def f():
        a=2
    
        def g():
            global a
            a=3
            print(a)    #3
    
        g()
        print(a)    #2
    
    f()
    print(a)    #3
    

    (2)nonlocal:修改外层词法变量

    a=1
    def f():
        a=2
    
        def g():
            nonlocal a
            a=3
            print(a)    #3
    
        g()
        print(a)    #3
    
    f()
    print(a)    #1
    

    (3)default:创建局部变量

    a=1
    def f():
        a=2
    
        def g():
            a=3
            print(a)    #3
    
        g()
        print(a)    #2
    
    f()
    print(a)    #1
    

    相关文章

      网友评论

        本文标题:[Python] global,nonlocal

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