python快速学习回忆版本------第六章-3

拈花ヽ惹草 提交于 2019-11-29 18:26:09
'''
作用域:变量可以使用的范围,程序的变量并不是在哪儿个位置都可以访问的,访问的权限决定于
        这个变量实在哪里赋值
划分:
    1、局部作用域L
    2、闭包函数外到函数中E
    3、全局作用域G
    4、内建作用域B

变量查找规则:
    L->E->G->B
'''

num=10
print("1--------",id(num))
def func():
    #global 将定义的变量申明成全局变量
    global num
    num=20
    print("2------",id(num))
    print("1------num = %d"%num)

func()
print("2-----num = %d"%num)


def fun2():
    a=10
    def fun3():
        a=20 #这个时候a是新的一个值,如果需要修改,需要申明nonlocal a
        nonlocal a #nonlocal 这个只能查找上一层作用域
        print("1------a = %d"%a)
    fun3()
    print("2------a = %d"%a)
fun2()
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!