Python 全局变量和局部变量以及global的应用
声明在函数外部的变量,称为全局变量,所有的函数都可以访问。
声明在函数内部的变量,称为局部变量,局部变量仅限于函数内部使用。
函数内部的变量,可以随便修改赋值,但是全局的变量就不能随便在函数体中进行修改,如何解决呢?
需要在函数内部声明,global 变量名,如下:
此时,全局变量已经被修改了,再调用 func()的时候,全局变量 name 就成了 func1()修改之后的 name了,如下:
那什么时候去加 global 呢?
当 全局变量 是不可变对象(字符串)时,在函数中修改全局变量时,需要加 global
而当 全局变量 是可变对象(列表)时,在函数中修改全局变量时,就不需要加 global,如下: