命名空间和作用域


总结:
永远是局部命名空间可以调用全局的变量,全局命名空间可以调用内置命名空间的变量
但是内置不能调用全局的,全局不能调用局部的
a=1
b=2

# def func():
#     name='剑圣'
#     print(a)
#     print(b)
#     print('name---',name)
# func()
# print(a)
# print(b)
# print(name)#报错  全局不能调用局部的
总结:
命名空间:
内置命名空间
全局命名空间:定义在函数外部的所有变量
局部命名空间:定义在函数内部的所有变量

作用域:
全局作用域:全局命名空间,内置命名空间
局部作用域:局部命名空间,全局命名空间,内置命名空间

使用的时候:永远优先用局部的,再用全局的,最后用内置的,(都有优先用自己的)
# name='德玛'
# def func3():
#     name='剑圣'
#     print(name)
#
# func3()
#
#
# name='德玛'
# def func3():
#     print(name)
#
# func3()