python命名空间(namespace)简单介绍

作者:人生与戏 时间:2022-06-21 23:26:53 

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

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

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

1. 效果图:

python命名空间(namespace)简单介绍

2. 代码


a=10
b=20
# 定义一个变量接收全局命名空间里的变量名、变量值
global_namespace=locals()
print(global_namespace)
print('\n\n\n')
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()

来源:https://www.cnblogs.com/FlyingLiao/p/11279798.html

标签:python,命名,空间,namespace
0
投稿

猜你喜欢

  • Python实现用户名和密码登录

    2022-02-17 13:49:49
  • python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法

    2021-09-15 16:28:22
  • PDO::lastInsertId讲解

    2023-06-11 14:31:37
  • Python参数解析模块sys、getopt、argparse使用与对比分析

    2021-12-19 17:39:58
  • 纯数字不重复排列的另类方法

    2009-12-04 18:25:00
  • pytorch + visdom CNN处理自建图片数据集的方法

    2023-05-03 06:33:16
  • Python统计列表元素出现次数的方法示例

    2021-03-06 00:43:23
  • Python中的函数参数类型检查

    2023-10-15 20:41:05
  • VMware中Linux共享mysql数据库

    2010-10-25 20:29:00
  • python绘制直线的方法

    2022-10-08 20:01:52
  • Python 按字典dict的键排序,并取出相应的键值放于list中的实例

    2022-01-26 16:48:46
  • 14条最佳JS代码编写技巧[译]

    2009-11-09 19:37:00
  • SQL SERVER 日志已满的处理方法

    2010-07-31 13:32:00
  • 删除多余的属性 xmlns=""

    2010-08-24 18:41:00
  • Django 源码WSGI剖析过程详解

    2023-09-14 22:19:58
  • ASP.NET 2.0防止同一用户同时登录

    2007-10-03 14:30:00
  • python基础教程之python消息摘要算法使用示例

    2023-07-03 20:06:00
  • JS载入数据效果!loading

    2009-01-20 18:35:00
  • Go Plugins插件的实现方式

    2023-10-15 01:51:20
  • 网页设计五原则

    2007-11-03 13:50:00
  • asp之家 网络编程 m.aspxhome.com