关于nonlocal的使用和global的区别

a=1

def Mm():

  a=2

  print(b)

  def mm():

    global a#在这里会报错,因为global定义的是全局变量

    nonlocal a#在这里使用nonlocal是对上一级的修改

    a+=1#不能对全局变量进行修改

  reyurn a

  mm()

print(a)

 

posted @ 2019-10-10 19:22  小王要变强  阅读(590)  评论(0编辑  收藏  举报