前言:
此时咱们对“python中的b”都比较看重,大家都想要剖析一些“python中的b”的相关内容。那么小编也在网络上搜集了一些关于“python中的b””的相关知识,希望你们能喜欢,大家快快来了解一下吧!'''
python在查找“名称”时,是按照LEGB规则查找的,local--Enclosed--Global--Built in
local:指的就是函数或者类的方法内部
Enclosed:指的是嵌套函数(一个函数包裹另一个函数,闭包)
Global:指的是模块中的全局变量
Built in:指的是python为自己保留的特殊名称
如果某个name映射在局部(local)命名空间中没有找到,接下来就会在闭包作用域(Enclosed)进行搜索,如果闭包作用域也没有找到,python就会到全局
(global)命名空间中进行查找,最后会在内建(build-in),命名空间搜索(如果一个名称在所有命名空间都没有找到,就会产生一个NameError)
测试:LEGB
'''
a=300
def outer():
a=200
def inner():
a=100
print(a)
inner()
outer() #在调用的时候现在inner函数里面找,找不到a就向外ourer函数里面找,如果outer也找不到,就再向上一级找,如果都没有就会报错
标签: #python中的b