Python命名空间

17次阅读
没有评论

共计 412 个字符,预计需要花费 2 分钟才能阅读完成。

基本概念

命名空间指的是变量存储的位置,每一个变量都需要存储到指定的命名空间当中。每一个作用域都会有一个对应的命名空间。

全局命名空间,用来保存全局变量,函数命名空间用来保存函数中的变量。

命名空间实际上就是一个字典,是一个专门用来存储变量的字典。

使用及示例

locals() 用来获取当前作用域的命名空间。如果在全局作用域中调用 locals() 则获取全局命名空间,如果在函数作用域中调用 locals() 则获取函数命名空间,返回的是一个字典。

globals() 用来在任意位置获取全局命名空间。

scope = locals()  # h 获取当前作用域的命名空间
print(scope)

scope['a'] = 100  # 相当于在全局中创建了 a 变量
print(scope)

def fn():
    a = 10
    scope = locals()  # 获取函数的命名空间
    print(scope)  # {'a': 10}

fn()

print(globals())  # 在任意位置获取全局命名空间 

正文完
post-qrcode
 0
三毛
版权声明:本站原创文章,由 三毛 于2023-10-27发表,共计412字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)