Pythonglobals()locals()vars()学习记录

  发布日期:   2017-08-11
  最新修改:   2020-09-16
  阅读次数:   80 次

globals()

  • 作用:返回当前全局符号表, 通常在是返回当前模块下的全局符号表, 比如全局内建的函数, 以及模块里的全局符号(定义声明的变量,类, 实例等), 在函数或者类方法中, globals() 返回的模块符号表是其所在模块, 而不是调用模块.

locals()

  • 作用:更新并以字典形式返回当前局部符号表. 自由变量由函数块的locals() 返回, 而 不会由 class块来返回. 需要注意的是, locals() 字典不应该被修改

vars()

  • 作用:返回__dict__ 属性
  • 比如模块、类、实例或者其它带有__dict__ 属性的object.
  • vars()使用时如果不传参数, 那么作用与 locals() 一样. 需要注意的是, locals 字典只在读操作 时使用, 因为对locals 的更新会被忽略.

   转载规则

《Pythonglobals()locals()vars()学习记录字》GajAngels 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。