global适用于函数内部修改全局变量的值

nonlocal适用于嵌套函数中内部函数修改外部变量的值

如果没有使用以上关键字,对全局变量或者外部变量进行修改,python会默认将全局变量隐藏起来

例1:

def outside():
  var = 5
  def inside():
    var = 3
    print(var)

  inside()
outside()

例2:

def outside():
  var = 5
  def inside():
    print(var)  inside函数改变了var所以python将var隐藏了起来,这里的print找不到var因而报错。
    var = 3

  inside()
outside()

例1不会显示报错,但是例2会

相关文章:

  • 2021-12-15
  • 2022-12-23
  • 2022-12-23
  • 2021-08-06
  • 2022-12-23
  • 2021-10-05
  • 2021-06-28
  • 2021-12-25
猜你喜欢
  • 2022-12-23
  • 2021-11-25
  • 2022-12-23
  • 2022-01-10
  • 2021-06-01
  • 2021-09-12
  • 2021-10-17
相关资源
相似解决方案