python——函数 11命名空间

Posted steven丶syw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python——函数 11命名空间相关的知识,希望对你有一定的参考价值。

三种名称空间
1、内置名称空间:
python解释器自带的名字,如:print、sum、max
当解释器启动时就会形成这个空间
2、全局名称空间:
执行python程序时就会产生这个空间
在每行顶端写代码
技术分享图片
a=10
def foo():
    print(a)
foo()
View Code
3:局部名称空间
定义在函数内部的名字
在调用函数时生效
技术分享图片
# def foo2(a,b):
#     c=1
#     print(a,b,c)
# foo2(10,9)
View Code
三者加载顺序:内置->全局->局部

三者取值顺序:局部->全局->内置
技术分享图片
a=10
def foo1():
    a=20
    print(a)
foo1()
# 因为局部有一个值 所以打印为20


b=10
def foo2():
    #b=20
    print(a)
foo2()
#当局部没有值时 就会找全局所以打印为10



#sum=10
def foo3():
    #sum=20
    print(sum)
foo3()
#当局部没有值和全局也没有值时就会找内置
View Code

 

以上是关于python——函数 11命名空间的主要内容,如果未能解决你的问题,请参考以下文章

python开发函数进阶:命名空间,作用域,函数的本质,闭包,内置方法(globales)

11.11函数对象,名称空间,作用域,命名关键字参数

Python学习:函数进阶

函数的 命名空间 作用域

python之函数命名空间和作用域

解读Python的命名空间