python的globals函数_Python内置函数之globals()与locals()

本文介绍了Python中内置的globals()和locals()函数,它们分别用于查看当前作用域内的全局变量和局部变量。通过实例展示了如何使用这两个函数来理解变量的作用范围,并强调了它们在编程调试中的重要性。
摘要由CSDN通过智能技术生成

Python内置函数globals() 函数与locals()函数简介。

在Python中,函数拥有自己的作用域,或者称为命名空间。在函数内访问某个变量会优先在函数自己的命名空间中进行访问。

而要想知道当前环境中有定义哪些全局变量以及局部变量对于Python来说是可行的的。内置的globals()函数和locals()函数就能完成这样的任务。

locals()函数使用示例

>>> a = "Apple"

>>> b = "Banana"

>>> c = "Watermelon"

def f2():

x = "local variable"

print(locals())

>>> f2()

{'x': 'local variable'}

示例中,在函数f2中,通过locals()函数我们知道了该函数的局部变量只有x.

globals()函数使用示例

>>> a = "Apple"

>>> b = "Banana"

>>> c = "Watermelon"

def f():

x = "local

>>> globals()

{'__name__': '__main__',

'__doc__': 'Automatically created module for IPython interactive environment',

'__package__': None,

'__loader__': None,

'__spec__': None,

'__builtin__': ,

'__builtins__': ,

'_ih': ['',

'a = "Apple"',

'b = "Banana"',

'c = "Watermelon"',

'def f():\n x = "local variable"\n ',

'globals()'],

'_oh': {},

'In': ['',

'a = "Apple"',

'b = "Banana"',

'c = "Watermelon"',

'def f():\n x = "local variable"\n ',

'globals()'],

'Out': {},

'_': '',

'__': '',

'___': '',

'_i': 'def f():\n x = "local variable"\n ',

'_ii': 'c = "Watermelon"',

'_iii': 'b = "Banana"',

'_i1': 'a = "Apple"',

'a': 'Apple',

'_i2': 'b = "Banana"',

'b': 'Banana',

'_i3': 'c = "Watermelon"',

'c': 'Watermelon',

'_i4': 'def f():\n x = "local variable"\n ',

'f': ,

'_i5': 'globals()'}

从示例我们可以看到,全局变量a, b, c均出现在了字典中,同时函数f也是属于全局对象,其也出现在了globals()函数返回的字典中,而函数的局部便来给你x没有出现在字典的key中。

欢迎关注

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值