函数locals()
返回本地符号表的字典。符号表是一种数据结构,保存变量、函数、对象、类出现的细节,由编译器处理。符号表有两种类型:局部符号表和全局符号表。
全局符号表包含程序全局范围的详细信息,它意味着所有函数和类的详细信息。
**locals()**
局部变量()参数:
locals()
函数没有任何参数。
局部变量()返回值
方法返回当前本地符号表的字典。字典包含本地变量,如文件名、包或来自当前本地符号表的文档字符串。
Python 中局部变量()
方法的示例
示例 1:本地变量()在 Python 中是如何工作的?
locals()
输出:
{'In': ['', 'locals()'],
'Out': {},
'_': '',
'__': '',
'___': '',
'__builtin__': ,
'__builtins__': ,
'__name__': '__main__',
'_dh': ['/home/repl'],
'_i': '',
'_i1': 'locals()',
'_ih': ['', 'locals()'],
'_ii': '',
'_iii': '',
'_oh': {},
'_sh': ,
'exit': ,
'get_ipython': >,
'quit': }
示例 2:局部变量()如何在局部范围内工作?
def localsNotPresent():
return locals()
def localsPresent():
present = True
return locals()
print('localsNotPresent:', localsNotPresent())
print('localsPresent:', localsPresent())
输出:
localsNotPresent: {}
localsPresent: {'present': True}
示例 3:更新局部变量()字典值
def localsPresent():
present = True
print(present)
locals()['present'] = False;
print(present)
localsPresent()
输出:
True
True