当前位置: 首页 > news >正文

做网站认证对网站有什么好处wordpress应用市场主体

做网站认证对网站有什么好处,wordpress应用市场主体,莆田城市投资建设集团网站,群辉 wordpress 端口号命名空间是名称与对象之间的关系,可以将命名空间看做是字典,其中的键是名称,值是对象。 命名空间不共享名称。 在命名空间中的名称能将任何python对象作为值,在不同的命名空间中相同的名称可以与不同的对象相关联。但是&#xf…

命名空间是名称与对象之间的关系,可以将命名空间看做是字典,其中的键是名称,值是对象。

命名空间不共享名称。

在命名空间中的名称能将任何python对象作为值,在不同的命名空间中相同的名称可以与不同的对象相关联。但是,如果存在名称解析协议,则多个命名空间可以一起工作来解析名称。也就是说,如果有多个命名空间(总是有的),那么可以定义搜索的顺序,依次在不同的命名空间里来查找某个名称(或确认其不存在于任何认可的命名空间)。在python中,将这一过程定义为作用域。

作用域搜索规则:LEGB

L:局部的(local)

E:封闭的(Enclosing)

G:全局的(Global)

B:内置的(Built-in)

一、局部命名空间

函数内部的命名空间,在调用函数的时候生成,调用结束时消失。当局部命名空间有效时,它是第一个用于检查某个名字存在性的命名空间。如果在局部命名空间内找到该名称,则返回与名字相关联的对象,反之提示出错。

二、全局命名空间

python在模块中维护命名空间,模块是一些python文件--包含函数等对象,并且可以导入其他程序使用。当某个模块被导入之后,该模块同时引入了一个命名空间,其中包含模块中所有的名称和关联的对象,可以通过存储在没个模块中的__dict__来查看这个命名空间,换句话说,字典就是这个模块的命名空间。

如果想要引用给模块中的对象,要使用点符号将名称和模块名称关联,这实际上是要求将对象与该模块中的名称相关联。

当python启动解释器时,它将自动导入两个模块,即模块__main__和__built-ins__。__main__模块是默认的全局模块,所有新对象都存储在其中。可以通过函数globals来访问该命名空间的字典。子啊平python解释器中通过输入用户交互时,globals是有效的命名空间。

1.局部赋值规则

python中有一种称为“本地赋值”的规则非常有趣。如果在函数内的任何地方进行局部赋值,则该赋值只在当前活动的命名空间中创建名称。有时这将产生副作用,举例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

>>> value= 27

>>>def func(param1,param2):

    for key,valin locals().items():

        print (key,val)

    value= value+ 1

>>> func(98765,43210)

param198765

param243210

Traceback (most recent call last):

  File "<pyshell#7>", line1,in <module>

    func(98765,43210)

  File "<pyshell#6>", line4,in func

    value= value+ 1

UnboundLocalError: local variable'value' referenced before assignment

>>>

首先通过赋值在全局命名空间中创建了变量value。也许你会认为,当函数值加1是会先在局部的命名空间中查找变量,无法找到时在全局命名空间中找到该名字。可以并不是这样。

python提出如下假设,如果在函数体内的任何地方对变量赋值,则python将名称添加到局部命名空间中。语句value=value+1对对象value进行赋值。python假设无论在何处发生赋值,value都是函数func局部命名空间的一部分。当python尝试把1跟value相加时,该value名称在局部命名空间中,但它没有关联值,所以python报错。

问题在于python何时决定使value出现在局部命名空间中。实际value出现在局部命名空间中发生在代码运行前,即,在python运行到函数定义之前。由于创建命名空间时,python会检查代码并填充局部命名空间。在python运行那行代码之前,就发现了对value的赋值,并把它添加到局部命名空间中,当函数执行时,python解释器认为value在局部命名空间中但没有值,所以会产生错误。

2.global语句

有一个方法可以解决上面的问题。如果在函数体内,使用global语句将变量声明为全局变量,那么python不会为该变量在命名空间中创建局部名称。

三、内置模块

遵循LEGB搜索规则,如果python不能在局部命名空间中找到某个名称,则会在全局命名空间中继续寻找,它寻找到的将是python的内置名称。

built-in模块和其他模块一样,都具有__dict__属性,这就是模块的命名空间

四、封闭式变量

“封闭式”的作用域规则适应于函数定义函数时,也就是说,在函数体内定义了一个新的函数。这个函数体内的函数是外函数的局部命名空间中的一部分,意味着只有在外函数执行期间才能够运行。完整的LEGB规则是先检查局部命名空间,之后是封闭在局部命名空间中的其他函数,之后是全局命名空间,在最后以内置命名空间结束。

http://www.lakalapos1.cn/news/158/

相关文章:

  • 中国建设网官方网站企业网银wordpress手机版受钱吗
  • 我要学习做网站怎么办网站
  • 商城网站建设所必备的四大功能是哪些wordpress调取页脚文件
  • 深圳市网站建设哪家好wordpress 增加页面
  • 兰州网站建设开发百度指数行业排行
  • 怎么做卖辅助网站如何制作网址
  • 网站建设的经费预算报告网站建设好卖吗
  • 做淘客的网站名称网站建设与管理专业就业
  • 旅游网站制作代码信息分类网站好建吗
  • 有什么可以在线做数学题的网站江苏省企业年报网上申报入口
  • 在西安市建设工程交易中心网站上江海区建设局网站
  • 中山火炬开发区建设局网站广州做大型网站建设
  • 都有什么类别的网站windows10php网站建设
  • 新西兰签证网站开发黄冈工程造价信息网
  • 网站不收录的原因网站建设公司专业网站开发制作
  • 海城网站制作百度快速排名
  • 网站后期维护内容php网站登录系统怎么做
  • 全面的基础微网站开发软件平台拓扑图
  • 食品品牌网站策划知名广州网站建设
  • 网站百度收录秒收方法wordpress插件后端页面
  • 1688网站可以做全屏吗网页设计作业简单
  • 网站建设需要什么条件万网空间存放两个网站
  • 郑州注册公司网上核名网站手机浏览器 网站开发
  • 南昌网站忧化上传WordPress之后
  • 如何做好企业网站网易企业邮箱登录入口手机
  • 罗湖商城网站建设哪家公司便宜点上传了网站标志怎么弄
  • 鞍山哪里做网站手机搭建网站教程
  • 做外贸一般上什么网站在百度上做网站多少钱
  • 和各大网站做视频的工作小程序推广收费价目表
  • 公司网站申请四川住房和建设厅官网