对于全局变量的修改,如果全局变量是int或者str,那么如果想要在函数中对函数变量进行修改,则需要先在函数内,声明其为global,再进行修改

如果是list或者dict则可以直接修改。

 

a = 1
b = [2, 3]
c = 1

def func():
    a = 2
    print ("in func a:", a)
    b[0] = 1
    print ("in func b:", b)
    global c
    c = 3
    print ("in func c:", c)

if __name__ == '__main__':
    print ("before func a:", a)
    print ("before func b:", b)
    print ("before func c:", c)
    func()
    print ("after func a:", a)
    print ("after func b:", b)
print ("after func c:", c)


python学习笔记——如何修改全局变量

 

 如上示例:

a和c是int型,如何没有声明global的话,那么a的值只是暂时修改了,而声明了全局的c永久变成了3,

对于列表b来说,虽然没有声明global,但在某个函数中修改了也被全局修改了。

来自我们都是大好青年博客:https://www.cnblogs.com/zhibei/p/9755938.html


相关文章:

  • 2021-08-06
  • 2021-09-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
  • 2021-07-22
猜你喜欢
  • 2021-10-28
  • 2022-01-14
  • 2021-11-17
  • 2022-12-23
  • 2021-12-09
  • 2021-11-18
相关资源
相似解决方案