python函数变量的作用域,python命名空间和作用域的关系

  python函数变量的作用域,python命名空间和作用域的关系

  本文主要介绍Python函数命名空间和作用域,分别介绍局部和全局模式。内容详细,有一定的参考价值,有需要的朋友可以参考一下。

  00-1010 1.本地范围2。Enclosingfunctionlocals范围3。全局全局变量4。非本地变量。邻近原则6。功能执行序列7。循环判断码块摘要:.中的范围问题

  Python函数是一个打包的代码块。通过前面的返回函数、闭包函数等课程,我们发现它的内部变量定义在不同的位置,使用起来的效果是不一样的。这是Python函数的作用域和命名空间。

  

目录

  a=100

  定义函数5():

  b=50

  a=99

  打印(函数中的a,a)

  打印(函数中的b,b)

  Print(在函数a之外,a)

  func5()

  打印(“非功能b”,b)

  返回结果:

  外部函数a 100

  在功能a 99内

  功能b 50

  回溯(最近呼叫):

  文件 c :/users/administrator/desktop/python知识总结/2.python自学网-通用模块-视频源代码/test.py ,模块中第12行

  打印(“非功能b”,b)

  NameError:未定义名称“b”

  b变量是在上面的函数中定义的,所以不能输出到外面。

  

1.Local作用域

  a=100

  定义函数5():

  b=50

  打印(函数中的a,a)

  打印(函数中的b,b)

  定义函数6():

  打印(较低功能中的a,a)

  打印(b在较低的功能中,b)

  func6()

  func5()

  返回结果:

  在功能a 100内

  功能b 50

  一个100的低函数

  B 50在较低的功能

  

2.Enclosing function locals作用域

  a=123

  定义函数():

  a=100

  打印(一份)

  打印(一份)

  函数()

  打印(一份)

  a=123

  定义函数():

  Global #您不能在这里使用非本地。

  a=100

  打印(一份)

  Print (locales ()) #查看局部变量

  Print(globals()) #查看全局变量

  打印(一份)

  函数()

  打印(一份)

  

3.Global全局变量

  定义函数5():

  b=50

  打印(b)

  定义函数6():

  非局部b #是非局部的,只适用于闭包的内部。

  b=60

  打印(b)

  func6()

  打印(b)

  func5()

  

4.非局部变量nonlocal

  b=1111

  定义函数5():

  b=50

  打印(b)

  定义函数6():

  b=60

  Print(b) #这里从里到外搜索B。

  func6()

  打印(b)

  func5()

  a=100

  定义函数5():

  b=50

  打印(一份)

  打印(b)

  定义函数6():

  b=60

  打印(b)

  打印(一份)

  func5()

  

5.就近原则

  a=123

  定义函数1():

  打印(一份)

  打印(b)

  Func1() #不能打印b

  b=456

  Func1() #可以打印b。

  

6.函数执行顺序

  如果为真:

  a=100

  打印(一份)

  对于(1,10):范围内的I

  打印(一)

  打印(一)

  循环代码块中没有范围。

  关于Python函数命名空间和作用域(局部和全局)的这篇文章到此为止。关于Python命名空间和作用域的更多信息,请搜索热门IT软件开发工作室之前的文章,或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: