zoukankan      html  css  js  c++  java
  • python命名空间(namespace)

    命名空间: 每一个作用域变量存储的位置,或者解释为 存储作用域中变量的字典。

    作用: 获取想查看某个作用域中的变量名、变量值。

    使用方法: locals()  #当前命名空间

    1. 效果图:

    2. 代码

    a=10
    b=20
    
    # 定义一个变量接收全局命名空间里的变量名、变量值
    global_namespace=locals()
    print(global_namespace)
    
    print('
    
    
    ')
    
    def one():
        c=30
        d=40
        # 定义一个变量接收局部命名空间里的变量名、变量值
        local_namespace=locals()
        print(local_namespace)
    
    # 调用one函数
    one()

    原笔记:

    # 命名空间(namespace)
    # 命名空间指的是变量存储的位置,每一个变量都需要存储到指定的命名空间当中
    # 每一个作用域都会有一个它对应的命名空间
    # 全局命名空间,用来保存全局变量。函数命名空间用来保存函数中的变量
    # 命名空间实际上就是一个字典,是一个专门用来存储变量的字典
    
    # locals()用来获取当前作用域的命名空间
    # 如果在全局作用域中调用locals()则获取全局命名空间,如果在函数作用域中调用locals()则获取函数命名空间
    # 返回的是一个字典
    scope = locals() # 当前命名空间
    print(type(scope))
    # print(a)
    # print(scope['a'])
    # 向scope中添加一个key-value
    scope['c'] = 1000 # 向字典中添加key-value就相当于在全局中创建了一个变量(一般不建议这么做)
    # print(c)
    
    def fn4():
        a = 10
        # scope = locals() # 在函数内部调用locals()会获取到函数的命名空间
        # scope['b'] = 20 # 可以通过scope来操作函数的命名空间,但是也是不建议这么做
    
        # globals() 函数可以用来在任意位置获取全局命名空间
        global_scope = globals()
        # print(global_scope['a'])
        global_scope['a'] = 30
        # print(scope)
    
    fn4()
  • 相关阅读:
    关于一个单机游戏发行的一些见解
    怎么租借电话号码
    NUMA架构的优缺点
    Windows 安装PostgreSQL
    Oracle查询当前用户下的所有表及sqlplus 设置 列宽
    Xshell调整终端显示的最大行数(缓冲区)
    PostgreSQL 索引膨胀
    Linux 清空缓存
    load多个数据文件的yaml
    Linux LVM逻辑卷配置过程详解(创建,增加,减少,删除,卸载)
  • 原文地址:https://www.cnblogs.com/FlyingLiao/p/11279798.html
Copyright © 2011-2022 走看看