global()返回全局作用域的属性字典, locals()返回局部作用域的属性字典.当locals()在模块顶层的位置时返回的值与global()相同.
实例
class Dog(object):
x = 11
y = 12
def __init__(self):
m = 44
n = 33
def eat(self):
k = 11
h = 22
'''
打印 {'h': 22, 'k': 11, 'self': <__main__.Dog object at 0x7fc2985b8e10>}
'''
print locals()
def func():
x = 1
y = 2
def wrap():
pass
'''
打印 func local is: {'wrap': <function wrap at 0x7fc2985be938>, 'y': 2, 'x': 1}
'''
print 'func local is: %s' % locals()
x = 1
y = 2
func()
'''
两者都打印{'__builtins__': <module '__builtin__' (built-in)>, '__file__': 't.py', 'Dog': <class '__main__.Dog'>, '__package__': None, 'func': <function func at 0x7fc2985be7d0>, 'x': 1, 'y': 2, '__name__': '__main__', '__doc__': None}
'''
print 'local is: %s' % locals()
print 'globals is: %s' %globals()
dog = Dog()
dog.eat()
输出
func local is: {'wrap': <function wrap at 0x7febea277938>, 'y': 2, 'x': 1}
local is: {'__builtins__': <module '__builtin__' (built-in)>, '__file__': 't.py', 'Dog': <class '__main__.Dog'>, '__package__': None, 'func': <function func at 0x7febea2777d0>, 'x': 1, 'y': 2, '__name__': '__main__', '__doc__': None}
globals is: {'__builtins__': <module '__builtin__' (built-in)>, '__file__': 't.py', 'Dog': <class '__main__.Dog'>, '__package__': None, 'func': <function func at 0x7febea2777d0>, 'x': 1, 'y': 2, '__name__': '__main__', '__doc__': None}
{'h': 22, 'k': 11, 'self': <__main__.Dog object at 0x7febea271e10>}
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
版权声明:本文为博主原创文章,未经博主允许不得转载。
分享到:
相关推荐
主要介绍了Python内置函数locals和globals对比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
主要介绍了Python globals()和locals()对比详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
在前面我们讲解了python内置函数locals,内置函数locals直接以字典的形式返回当前位置的所有局部变量,今天需要介绍的是另外一个python内置函数globals,该函数直接以字典的形式返回当前位置的所有全局变量 ...
本文实例讲述了Python基础教程之内置函数locals()和globals()用法。分享给大家供大家参考,具体如下: 1. 这两个函数主要提供,基于字典的访问局部变量和全局变量的方式。 python 使用叫做名字空间的东西来记录变量...
主要介绍了Python两个内置函数 locals 和globals(学习笔记),需要的朋友可以参考下
Python的命名空间通过一种字典的形式来体现, 而具体到函数也就是locals() 和 globals(), 分别对应着局部命名空间和全局命名空间. 于是, 我们也就能通过这些方法去实现我们”动态赋值”的需求. 例如: def test(): ...
globals和locals参数是可选的,如果提供了globals参数,那么它必须是dictionary类型;如果提供了locals参数,那么它可以是任意的map对象。 python的全局名字空间存储在一个叫globals()的dict对象中;局部名字空间...
1.4 下载和安装Python 1.5 运行Python 1.5.1 命令行上的交互式解释器 1.5.2 从命令行启动脚本 1.5.3 集成开发环境 1.5.4 其他的集成开发环境和执行环境 1.6 Python文档 1.7 ...
Globals和Locals框显示当前作用域中的局部和全局变量。 排除以双下划线__开头和结尾的特殊变量(您始终可以使用PDB命令查看它们)。 Python 2的人类可读Unicode文字。 命令历史记录,最多可存储10个最后的唯一PDB...
object[, globals[, locals]]) object:(必填)表示需要执行的Python代码 globals:(选填)表示全局命名空间 locals:(选填)表示当前局部命名空间 Example:生成10个变量 ['q_0', 'q_1', 'q_2', 'q_3', 'q_4'...
1.4 下载和安装Python 1.5 运行Python 1.5.1 命令行上的交互式解释器 1.5.2 从命令行启动脚本 1.5.3 集成开发环境 1.5.4 其他的集成开发环境和执行环境 1.6 Python文档 1.7 ...
、globals()和locals() # 通过exec() for i in range(1, 4): # 第一次循环 i=1 时,会执行字符串中的python语句 ex1 = "exec1",以此类推 exec(f'ex{i} = "exec{i}"') # 通过globals()和locals() ...
1.4 下载和安装python 1.5 运行python 1.5.1 命令行上的交互式解释器 . 1.5.2 从命令行启动脚本 1.5.3 集成开发环境 1.5.4 其他的集成开发环境和执行环境 1.6 python文档 1.7...
eval() 在print干事情之前,先看看这个东东。不是没有用,因为说不定某些时候要用到。 复制代码 代码如下: ... Evaluate the source in the context of globals and locals. The source may be a st
1.4 下载和安装python 1.5 运行python 1.5.1 命令行上的交互式解释器 . 1.5.2 从命令行启动脚本 1.5.3 集成开发环境 1.5.4 其他的集成开发环境和执行环境 1.6 python文档 1.7...
globals() / locals() 函数变量 def 函数名(...): pass 函数可以作为参数传递 函数可以作为返回值返回 函数的嵌套定义 python 作用域 局部作用域 外部嵌套函数作用域 模块级的作用域(全局作用域) 内...