Python本地与全局命名空间用法实例

yipeiwu_com6年前Python基础

本文实例讲述了Python本地与全局命名空间用法。分享给大家供大家参考。具体如下:

x = 1
def fun(a):
  b=3
  x=4
  def sub(c):
    d=b
    global x
    x = 7
    print ("Nested Function\n=================")
    print locals()
  sub(5)
  print ("\nFunction\n=================")
  print locals()
  print locals()["x"]
  print globals()["x"]
print ("\nGlobals\n=================")
print globals()
fun(2)
 
///scope.py
Globals
=================
{'x': 1,
 '__file__':
'C:\\books\\python\\CH1\\code\\scope.py',
 'fun': <function fun at 0x008D7570>,
 't': <class '__main__.t'>,
 'time': <module 'time' (built-in)>,. . .}
Nested Function
=================
{'c': 5, 'b': 3, 'd': 3}
Function
=================
{'a': 2, 'x': 4, 'b': 3, 'sub':
  <function sub at 0x008D75F0>}
4
7

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python version 2.7 required, which was not found in the registry

Python version 2.7 required, which was not found in the registry

安装PIL库的时候,直接提示:Python version 2.7 required, which was not found in the registry。 如图: 大意是说找不到...

Python3单行定义多个变量或赋值方法

Python3单行定义多个变量或赋值方法

你甚至可以在一行内将多个值赋值给多个变量 >>> a , b = 45, 54 >>> a 45 >>> b 54 这个技巧用...

对于Python深浅拷贝的理解

对于Python深浅拷贝的理解

1,浅拷贝是什么? 浅拷贝是对于一个对象的顶层拷贝,通俗的理解是:拷贝了引用,并没有拷贝内容 通过a=b这种方式赋值只是赋值的引用(内存地址),a和b都指向了同一个内存空间,所...

Python随机函数random()使用方法小结

1. random.random()   random.random()方法返回一个随机数,其在0至1的范围之内,以下是其具体用法:   import random   print...

Python之reload流程实例代码解析

本文研究的主要是Python之reload流程的相关内容,具体如下。 在Python中,reload() 用于重新载入之前载入的模块。 reload() 函数语法: reload(m...