在学习C语言的时候,我们曾经了解过这两个概念。再次温习下:
全局变量和局部变量的区别在于作用域的不同,全局变量在整个文件里都是可以访问的,而局部变量只能在某个函数内调用。
代码1:
a = None
def f1():
global a
a = 20
b = a + 100
return b
print('Pass_a: ', a)
print(f1())
print('Now_a: ',a)
运行结果如下:
Pass_a: None
120
Now_a: 20
代码2:
a = None
def f2():
a = 20
b = a + 100
return b
print('Pass_a: ', a)
print(f2())
print('Now_a: ',a)
运行结果:
Pass_a: None
120
Now_a: None
通过两个实验可以看出,如果不把a设为全局变量(global),在函数内对a赋值是无效的,并不影响a的值。