变量的作用域是指变量起作用的范围,根据范围作用的大小可分为局部变量和全局变量。
局部变量
定义:在函数定义处的参数和函数内部定义的变量
作用范围:仅在函数内部,函数执行结束,局部变量的生命周期也结束。
全局变量
定义:在函数外定义的变量或函数内部使用global关键字修饰的变量。
作用范围:整个程序运行结束,全局变量的生命周期才结束。
def cal(a,b): s=a+b print(s) cal(10,20) # print(a,b,s) #a,b,s是函数定义处或内部使用的变量,是局部变量,随着函数调用结束而失效 print('*'*50) a=100 def cal1(x,y): return a+x+y print(a) # 100 a为全局变量,函数内可以使用它,函数结束后也可以使用,只有整个程序结束后才失效 print(cal1(10,20)) # 130 print('*'*50) def cal2(x,y): a=200 #这里的a是局部变量,当局部变量和全局变量的名称相同时,局部变量的优先级高 return a+x+y print(a) # 100 这里的a是全局变量 print(cal2(10,20)) # 230 print('*'*50) def cal3(x,y): global s #函数内部定义的变量s,在加上global后就变成了全局变量了 s=300 # 定义全局变量和赋值必须分开,不能放在一行 return s+x+y print(cal3(10,20)) #330 print(s) # 300 只有调用上面那个函数后才能使用
posted on
浙公网安备 33010602011771号