Python 第七节 第三课

举报
我是小白呀iamarookie 发表于 2021/09/10 23:15:06 2021/09/10
【摘要】 [toc] LEGB 规则      Python     在查找 "名称" 时, 是按照 LEGB 规则查找的: Local-->Enclosed-->Global-->Built in.     Local  &nbsp...

[toc]

LEGB 规则 

    Python     在查找 "名称" 时, 是按照 LEGB 规则查找的: Local-->Enclosed-->Global-->Built in.

    Local        指的就是函数或者类方法内部

    Encolesd  指的是嵌套函数 ( 一个函数包裹另一个函数, 闭包 )

    Global       指的是模块中的全局变量

    Built in       指的是 Python 为自己保留的特殊名称

    如果某个 name 映射在局部 (local) 命名空间中没有找到, 接下来就会在闭包作用域 ( enclosed ) 进行搜索, 如果闭包作用域 (enclosed) 进行搜索, 如果闭包作用域也没有找到, Python 就会到全局 ( global ) 命名空间进行查找, 最后会在内建 ( built-in ) 命名空间中搜索 ( 如果一个名称在所有命名空间中没有找到, 就会产生 NameError ).

    

执行结果:

 

文章来源: iamarookie.blog.csdn.net,作者:我是小白呀,版权归原作者所有,如需转载,请联系作者。

原文链接:iamarookie.blog.csdn.net/article/details/108907385

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。