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中使用中文的方法
Feb 19 Python
python在指定目录下查找gif文件的方法
May 04 Python
深入讲解Python中面向对象编程的相关知识
May 25 Python
python实现用于测试网站访问速率的方法
May 26 Python
python执行子进程实现进程间通信的方法
Jun 02 Python
Python中字符串格式化str.format的详细介绍
Feb 17 Python
解决Python print 输出文本显示 gbk 编码错误问题
Jul 13 Python
python实现flappy bird游戏
Dec 24 Python
python自动化测试无法启动谷歌浏览器问题
Oct 10 Python
python求前n个阶乘的和实例
Apr 02 Python
Java Unsafe类实现原理及测试代码
Sep 15 Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 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
为什么夜间收到的中波电台比白天多
2021/03/01 无线电
php入门学习知识点三 PHP上传
2011/07/14 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
2013/06/28 PHP
mac下安装nginx和php
2013/11/04 PHP
phpQuery占用内存过多的处理方法
2013/11/13 PHP
WordPress中获取页面链接和标题的相关PHP函数用法解析
2015/12/17 PHP
php微信公众号开发之欢迎老朋友
2018/10/20 PHP
javascript iframe中打开文件,并检测iframe存在否
2008/12/28 Javascript
jQuery1.9.1源码分析系列(十六)ajax之ajax框架
2015/12/04 Javascript
javascript每日必学之继承
2016/02/23 Javascript
JavaScript中的时间处理小结
2016/02/24 Javascript
快速掌握Node.js事件驱动模型
2016/03/21 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
原生js的RSA和AES加密解密算法
2016/10/08 Javascript
jQuery实现二维码扫描功能
2017/01/09 Javascript
Javascript基于OOP实实现探测器功能代码实例
2020/08/26 Javascript
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
2019/02/27 Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
2019/06/13 Python
Python中判断子串存在的性能比较及分析总结
2019/06/23 Python
Django基础三之视图函数的使用方法
2019/07/18 Python
python脚本之一键移动自定格式文件方法实例
2019/09/02 Python
pandas 像SQL一样使用WHERE IN查询条件说明
2020/06/05 Python
微软英国官方网站:Microsoft英国
2016/10/15 全球购物
Vans英国官方网站:美国南加州的原创极限运动潮牌
2017/01/20 全球购物
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
财务经理的岗位职责
2013/12/17 职场文书
法学院方阵解说词
2014/01/29 职场文书
事假请假条范文
2014/04/11 职场文书
三月法制宣传月活动总结
2014/07/03 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
软件测试专业推荐信
2014/09/18 职场文书
2014年信息宣传工作总结
2014/12/18 职场文书
家长对孩子的寄语
2015/02/26 职场文书
幼儿体育课教学反思
2016/02/16 职场文书
详解Vue slot插槽
2021/11/20 Vue.js
Python可视化神器pyecharts之绘制箱形图
2022/07/07 Python