1.Python当中没有块级的作用于:代码如下:
if 1==1:
name="Alex"#在java中不可以打印出来但是在Python中是没有块作用域,它还在外面生效
print(name)#在javasript也是可以打印的,在Python中也可以打印
2.Python中的作用于是以函数为作用域的。代码如下:
def fun1():
name="Alex"
# print(name)会报错,超出了name的作用域
3.在Python中作用域先找它自身函数的,然后再往外找,Python中是有作用域链的
name="Alex"
def f2():
name="eric"
def f3():
print(name)#从里面向外面找
f3()
f2()
4.Python的作用域是在执行之前就已经确定下来的,如果要执行就去原来的作用域找就可以了
n="Alex"
def fu():
print(n)#从里到 外找,跟fu这个函数放在哪里是没有关系的
def f1():
n="AJ"
fu()
f1()