变量的作用域(全局变量和局部变量)
变量起作用的范围叫做变量的作用域,不同作用域内同名变量之间互不影响。变量分为:全局变量和局部变量
全局变量:
- 在函数的类定义之外声明的变量。作用域为定义的模块,从定义位置开始直到模块结束。
- 全局变量降低了函数的通用性和可读性。应尽量避免全局变量的使用。
- 全局变量一般当成常量使用。
- 函数内要改变全局变量的值,使用global声明一下
局部变量:
- 在函数体中(包含形式参数)声明的变量。
- 局部变量的引用比全局变量快,优先考虑使用。
- 如果局部变量和全局变量同名,则在函数内隐藏全局变量,只使用同名的局部变量。
输出打印局部变量:locals()
输出打印全局变量:globals()
1 a = 3 2 def text01(): 3 b = 4 4 print(b*10) 5 global a 6 a = 300 7 8 print(locals()) 9 print(globals()) 10 11 text01() 12 print(a)