全局变量和局部变量
我们通常把定义在函数外的变量成为全局变量,定义在函数内的变量称为局部变量,顾名思义,全局变量的作用域是整个代码段,局部变量的作用域就只是在它所属的代码段,变量只在它的作用域里有效。
通过实例,我们可以进一步理解下,全局和局部的概念。
count=10 #全局变量 def print_local: count=5 #局部变量,这个count覆盖了全局变量count,这2个是不同的变量。 print(count) def print_global: print(count) #这里的count是最上面的全局变量噢 print_local print_global
结果会是?
global语句
从上面课的代码中可以发现,如果在函数体内声明的变量名和已经有的全局变量名重复,那么局部变量就会把全局变量覆盖掉。如果想要在函数体内使用全局变量,使用前需要先用global语句来声明下用到的这个变量是全局变量。
count=10 #全局变量 def print_local: global count #声明count是全局的 count=5 #这个count就是上面的全局变量 print(count) def print_global: print(count) print_local print_global
这次的结果是: