美文网首页
python中的global关键字的使用方法

python中的global关键字的使用方法

作者: 指向远方的灯塔 | 来源:发表于2021-05-13 12:54 被阅读0次

    1.使用场景

    • 只有全局变量在函数中需要修改的时候,需要加global关键字进行声明
    #使用到的全局变量只是作为引用,不在函数中修改它的值的话,不需要加关键字global
    #定义全局变量
    a=5
    b=3
    def fun():
        a=3
        b=2
        print(a+b)#--->5
    
    fun()
    print(a+b)#---->8
    
    #定义全局变量
    a=5
    b=3
    def fun():
        global a
        a=3
        global b
        b=2
        print(a+b)#--->5
    
    fun()
    print(a+b)#---->5
    

    2.底层逻辑

    • 每个python函数拥有对应的globals字典,该字典与函数所属模块的dict字典完全相同,一个模块中每个函数的 globals 字典变量都是模块 dict 字典变量的引用。函数的全局变量也会从这个字典中获取。当使用关键字global后,就会去该字典中查找全局变量,并获取到对应的值
    #定义全局变量
    a=5
    b=3
    def fun():
        global a
        a=3
        fun.__globals__['b']=2
        print(a+b)#--->5
    
    # fun.__globals__['b']=2
    fun()
    
    print(a+b)#---->5
    

    相关文章

      网友评论

          本文标题:python中的global关键字的使用方法

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