Python 中locals() 和 globals()内建函数
Admin
2018-07-09 10:00:00
Python
1、locals() 和 globals() 是Python的内建函数,他们提供了字典的形式访问局部变量和全局变量的方式。
def A(arg): a=1 b=2 data_dict = {} print locals() print globals() if __name__ == '__main__': A(3)
2、locals() 返回是当前局部变量的深拷贝,修改locals() 中变量值的时候,实际上对于原变量本身是没有任何影响的。而globals()返回的是全局变量的字典,修改其中的内容,值会真正的发生改变。
v = 5 # 定义一个全局变量 def TEST(): k=1 locals()["k"] = 2 # 修改局部变量 print "k=", k globals()["b"] = 6 # 修改全局变量 print "v=", v if __name__ == '__main__': TEST()
输出为:
k=1 v=6