使用全局变量:
1.定义
2.使用时再次声明
即全局变量在使用之前就要声明,声明全局变量使用关键字 global,然后在使用该全局变量之前,需要再次声明
示例
global val #在使用前初次声明
val = 10 #给全局变量赋值
def fun1():
global val #再次声明,表示在这里使用的是全局变量,而不是局部变量
print('现在是全局变量val,值为',val)
def fun2():
val = 5
print('现在是局部变量val,值为',val)
if __name__ == "__main__":
fun1()
fun2()
运行结果:
现在是全局变量val,值为 10
现在是局部变量val,值为 5
特别需要注意如果在fun1()里边声明global val 以前对val赋值的话会报错
global val #在使用前初次声明
val = 10 #给全局变量赋值
def fun1():
#val = 5 #这样会报错
global val #再次声明,表示在这里使用的是全局变量,而不是局部变量
val = 5 #这样的话全局变量也会为5
print('现在是全局变量val,值为',val)
def fun2():
val = 5
print('现在是局部变量val,值为',val)
if __name__ == "__main__":
fun1()
fun2()
特别注意,如果是类,全局变量应该写在类的最开始,构造函数之前