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的lambda匿名函数的简单介绍
Apr 25 Python
python实现模拟按键,自动翻页看u17漫画
Mar 17 Python
python通过ftplib登录到ftp服务器的方法
May 08 Python
Python数据结构之翻转链表
Feb 25 Python
Python爬虫文件下载图文教程
Dec 23 Python
Python实现字典按key或者value进行排序操作示例【sorted】
May 03 Python
python可视化实现KNN算法
Oct 16 Python
python 实现仿微信聊天时间格式化显示的代码
Apr 17 Python
500行python代码实现飞机大战
Apr 24 Python
pycharm设置默认的UTF-8编码模式的方法详解
Jun 01 Python
Python 远程开关机的方法
Nov 18 Python
python 如何在测试中使用 Mock
Mar 01 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
PHP自定义多进制的方法
2016/11/03 PHP
thinkPHP5.1框架中Request类四种调用方式示例
2019/08/03 PHP
HTML-CSS群中单选引发的“事件”
2007/03/05 Javascript
IE与firefox之jquery用法区别
2008/10/03 Javascript
JavaScript 函数式编程的原理
2009/10/16 Javascript
Javascript 定时器调用传递参数的方法
2009/11/12 Javascript
刷新页面的几种方法小结(JS,ASP.NET)
2014/01/07 Javascript
javascript中局部变量和全局变量的区别详解
2015/02/27 Javascript
深入解析AngularJS框架中$scope的作用与生命周期
2016/03/05 Javascript
jQuery.cookie.js使用方法及相关参数解释
2017/03/06 Javascript
Bootstrap警告框(Alert)插件使用方法
2017/03/21 Javascript
AngularJS动态绑定ng-options的ng-model实例代码
2017/06/21 Javascript
node.js部署之启动后台运行forever的方法
2018/05/23 Javascript
微信小程序实现上传照片代码实例解析
2020/08/04 Javascript
JavaScript 声明私有变量的两种方式
2021/02/05 Javascript
[01:14]英雄,所敬略同——2018完美盛典宣传视频
2018/12/05 DOTA
[50:02]完美世界DOTA2联赛循环赛 Magma vs IO BO2第一场 11.01
2020/11/02 DOTA
Python 装饰器深入理解
2017/03/16 Python
Python基于回溯法子集树模板解决野人与传教士问题示例
2017/09/11 Python
matplotlib在python上绘制3D散点图实例详解
2017/12/09 Python
django 自定义filter 判断if var in list的例子
2019/08/20 Python
Python面向对象封装操作案例详解
2019/12/31 Python
Python 将json序列化后的字符串转换成字典(推荐)
2020/01/06 Python
Python requests模块cookie实例解析
2020/04/14 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
Champs Sports加拿大:北美最大的以商场为基础的专业运动鞋和服装零售商之一
2018/05/01 全球购物
耐克中国官方商城:Nike中国
2018/10/18 全球购物
实习期自我鉴定
2013/10/11 职场文书
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
银行实习生的自我评价
2014/01/13 职场文书
检察官就职演讲稿
2014/01/13 职场文书
哈弗商学院毕业生求职信
2014/02/26 职场文书
电子专业毕业生自荐信
2014/05/25 职场文书
毕业证丢失证明范本
2014/09/20 职场文书
利用Python判断整数是否是回文数的3种方法总结
2021/07/07 Python
SpringBoot集成MongoDB实现文件上传的步骤
2022/04/18 MongoDB