python中局部变量和全局变量
局部变量,就是在函数内部定义的变量
不同的函数,可以定义相同的名字的局部变量,但是各用个的不会产生影响
局部变量的作用,为了临时保存数据需要在函数
在函数外边定义的变量叫做全局变量
全局变量能够在所有的函数中进行访问
如果在函数中修改全局变量,那么就需要使用global进行声明,否则出错
如果全局变量的名字和局部变量的名字相同,那么使用的是局部变量的
操作方法
- 01
局部变量: 局部变量,就是在函数内部定义的变量 不同的函数,可以定义相同的名字的局部变量,但是各用个的不会产生影响 局部变量的作用,为了临时保存数据需要在函数中定义变量来进行存储,这就是它的作用 1 def test1(): 2 a=111 3 print("a=%d"%a) 4 b=222 5 print("b=%d"%b) 6 7 def test2(): 8 c=333 9 print("c=%d"%c)
- 02
全局变量 如果一个变量,既能在一个函数中使用,也能在其他的函数中使用,这样的变量就是全局变量 1 a=200 2 def test1(): 3 print(a) 4 5 def test2(): 6 print(a) 7 8 test1() 9 test2()
- 03
全局变量和局部变量名字相同问题 #定义全局变量 a=200 def test1(): a=300 print("test1...修改前a=%d"%a) a=400 print("test1...修改后a=%d"%a) def test2(): print("test2....a=%d"%a) test1() test2()~
- 04
修改全局变量 既然全局变量,就是能够在所以的函数中进行使用,那么可否进行修改呢? 答案是可以的,我们可以使用global
- 05
总结: 在函数外边定义的变量叫做全局变量 全局变量能够在所有的函数中进行访问 如果在函数中修改全局变量,那么就需要使用global进行声明,否则出错 如果全局变量的名字和局部变量的名字相同,那么使用的是局部变量的
- 06
可变类型的全局变量 ~在函数中不使用global声明全局变量时不能修改全局变量的本质是不能修改全 局变量的指向,即不能将全局变量指向新的数据。 ~对于不可变类型的全局变量来说,因其指向的数据不能修改,所以不使用glob al时无法修改全局变量。 ~对于可变类型的全局变量来说,因其指向的数据可以修改,所以不使用global 时也可修改全局变量