作用域
全局作用域
作用在全局
包含内置和全局名字空间的名字都是属于全局作用域。
局部作用域
函数(局部名字空间的名字属于局部作用域的)
对于不可变数据类型,在局部可以查看全局作用域的变量,不能直接修改。如需要修改,则在变量前添加global。
如:
a = 1 def taonidaxiang(): global a a += 1 print(a) taonidaxiang()
如果在一个局部函数内申明了一个global,那么这个变量在局部的所有操作将对全局的变量有效。
查看局部作用域变量——locals
a = 1 def taonidaxiang(): x = 'sahik' y = 'sdiushd' print(locals()) taonidaxiang()
查看全局时使用globals,与locals一样
注意;当把locals放在全局中打印,则显示全局的名字。在局部时输入局部的。
globals永远打印全局的