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


Posted in Python onAugust 10, 2019

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

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

使用方法: 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()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之dict()的操作方法
Sep 24 Python
简单介绍Python中的floor()方法
May 15 Python
Python实现PS图像调整颜色梯度效果示例
Jan 25 Python
Python PyCharm如何进行断点调试
Jul 05 Python
python pandas cumsum求累计次数的用法
Jul 29 Python
基于python的selenium两种文件上传操作实现详解
Sep 19 Python
python matplotlib折线图样式实现过程
Nov 04 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
ansible-playbook实现自动部署KVM及安装python3的详细教程
May 11 Python
python logging.info在终端没输出的解决
May 12 Python
Python尾递归优化实现代码及原理详解
Oct 09 Python
Pandas对每个分组应用apply函数的实现
Dec 13 Python
简单介绍python封装的基本知识
Aug 10 #Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
Aug 09 #Python
python selenium爬取斗鱼所有直播房间信息过程详解
Aug 09 #Python
用Python实现二叉树、二叉树非递归遍历及绘制的例子
Aug 09 #Python
基于python二叉树的构造和打印例子
Aug 09 #Python
Python re 模块findall() 函数返回值展现方式解析
Aug 09 #Python
Django ORM 自定义 char 类型字段解析
Aug 09 #Python
You might like
实现“上一页”和“下一页按钮
2006/10/09 PHP
那些年一起学习的PHP(一)
2012/03/21 PHP
PHP获取路径和目录的方法总结【必看篇】
2017/03/04 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
点图片上一页下一页翻页效果
2008/07/09 Javascript
JQuery 插件模板 制作jquery插件的朋友可以参考下
2010/03/17 Javascript
通过判断JavaScript的版本实现执行不同的代码
2010/05/11 Javascript
JS+CSS实现类似QQ好友及黑名单效果的树型菜单
2015/09/22 Javascript
神级程序员JavaScript300行代码搞定汉字转拼音
2017/05/20 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
微信小程序实现之手势锁功能实例代码
2018/07/19 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
Vue源码探究之状态初始化
2018/11/14 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
微信小程序使用字体图标的方法
2019/05/23 Javascript
JavaScript实现轮播图效果代码实例
2019/09/28 Javascript
Python 的 with 语句详解
2014/06/13 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
2015/04/09 Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
2018/05/02 Python
在cmder下安装ipython以及环境的搭建
2018/10/19 Python
python获取引用对象的个数方式
2019/12/20 Python
TensorFlow——Checkpoint为模型添加检查点的实例
2020/01/21 Python
python实现微信打飞机游戏
2020/03/24 Python
Python根据指定文件生成XML的方法
2020/06/29 Python
Python基于Webhook实现github自动化部署
2020/11/28 Python
Python读取ini配置文件传参的简单示例
2021/01/05 Python
纯CSS3实现滚动的齿轮动画效果
2014/06/05 HTML / CSS
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
汽车检测与维修个人求职信
2013/09/24 职场文书
高中学校对照检查材料
2014/08/31 职场文书
民主评议党员自我评价材料
2014/09/18 职场文书
2016感恩父亲节主题广播稿
2015/12/18 职场文书
师德培训心得体会2016
2016/01/09 职场文书
教学工作总结范文5篇
2019/08/19 职场文书
话题作文之学会尊重
2019/12/16 职场文书
golang 接口嵌套实现复用的操作
2021/04/29 Golang