python命名空间和作用域-成都快上网建站

python命名空间和作用域

命名空间是从名称到对象的映射,大部分的命名空间都是通过 Python 字典来实现的

成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站制作、成都网站建设、连城网络推广、微信小程序、连城网络营销、连城企业策划、连城品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供连城建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

命名空间查找顺序:局部命名空间、全局命名空间、内置命名空间

相同的对象名称可以存在于多个命名空间中

作用域就是一个可以直接访问命名空间的正文区域。程序的变量并不是在哪个位置都可以访问的,访问权限决定于这个变量是在哪里赋值的。变量的作用域决定了在哪一部分程序可以访问哪个特定的变量名称。python的作用域共有四种:

L(Local):最内层,包含局部变量,比如一个函数/方法内部

E(Enclosing):包含了非局部也非全局的变量。比如两个嵌套函数中间的变量

G(Global):当前脚本的最外层,比如当前模块的全局变量

B(Built-in):包含了内建的变量/关键字等,最后被搜索(通过builtins标准模块实现,要先导入)

规则顺序:L、E、G、B

python中只有模块、类、函数才会引入新的作用域,其它的代码块(如 if/elif/else/、try/except、for/while等)不会引入新的作用域,这些语句内定义的变量,外部也可以访问

例如:

def aFunction():
    a= 1
    return a


print(a)

分享文章:python命名空间和作用域
转载注明:http://kswjz.com/article/dsogpgd.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流