作用域的数字

来源:互联网 发布:淘宝高达模型店 编辑:程序博客网 时间:2024/04/29 05:01

如果将全局变量的名字声明在一个函数体内的时候,全局变量的名字就能被局部变量给覆盖掉。

>>> def foo():
    m=3
    def bar():
        n=4
        m=9
        print(m)
        print(m+n)
    print(m)
    bar()                    #这个bar函数输出m和m+n,两个参数使用的是局部变量

    
>>> foo()
3
9
13



虽然存在多个函数的嵌套,但你不能访问超过两个的作用域。(Python2.1之前存在这个问题,现在没有了)

>>> def foo():
    m=3
    def bar():
        n=4
        print(m+n)
    print(m)
    bar()

    
>>> foo()
3
7


原创粉丝点击